Repository navigation
feat: bucket versioning management + per-object version history - #74
Merged
Merged
Conversation
Design for S3 object-versioning in two parts: a "Versioning" nav section to view status and enable/suspend versioning per bucket, and a per-object versions dialog to download, restore, permanently delete versions and remove delete markers. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ion tests Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…r order Each Modal registers its own document keydown listener. A modal that dismisses itself unmounts synchronously and leaves the stack, so a listener that ran afterwards saw the modal beneath it as top-most and dismissed it too. The handler now claims the event with preventDefault and ignores events that are already defaultPrevented. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…over Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…t, drop dead keys Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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
Adds S3 object-versioning support in two parts:
Part A — bucket versioning management
Part B — per-object versions
Supporting change
Modalwrapper is now Esc-stack-aware: only the top-most modal dismisses on Escape, fixing Esc closing both dialogs when a confirmation is nested (this feature is the first to nest one).i18n added across all six locales (en/de/fr/pl/nl/ro).
Implementation notes
s3/*module → typed IPC channel → preload → query/mutation hook → component) used by CORS and Object Lock.presignGet/downloadObjectgained an optionalversionId(backward compatible; omitting it is unchanged behaviour). Six new IPC channels are additive.Testing
tsc --noEmitclean,npm run lint0 errors.Follow-ups (non-blocking)
🤖 Generated with Claude Code