feat: add Office overview page with recent / shared / templates#5598
Open
karlitschek wants to merge 1 commit intomainfrom
Open
feat: add Office overview page with recent / shared / templates#5598karlitschek wants to merge 1 commit intomainfrom
karlitschek wants to merge 1 commit intomainfrom
Conversation
Adds a new top-level "Office" entry to the app menu that opens a Vue SPA at /apps/richdocuments/overview, providing a single landing page for the user's office work. Features: - Home with three sections: My recent docs, Shared with me, Templates - Dedicated views for each, with date grouping (Today / Yesterday / Earlier this week / Earlier this month / Older) and sticky headers - Type filter pills (Documents / Spreadsheets / Presentations / PDFs) - List and grid view toggle, persisted in localStorage - Hover quick-preview popover (mounted at <body> via singleton) - Active-editor badges with pulsing live indicator (WOPI tokens) - Pinning / favourites integrated with Nextcloud's per-user tags so pins also appear in the Files app's Favorites view - Type-coloured thumbnails with frame on grid cards - Friendly empty-state illustrations with calls to action - Confetti + showSuccess toast on document creation - Smooth fade/slide route transitions, all motion respects prefers-reduced-motion Backend: - OverviewService runs an indexed user-folder SearchQuery (mime IN + 60-day mtime window), partitions by ownership for recent vs shared, and batch-loads active editors and favourites per page - OverviewController renders the SPA shell as RENDER_AS_USER - OverviewApiController exposes paginated OCS endpoints, plus create-from-template and favourite-toggle, with strict input validation and OCS-bypass CSRF handling Frontend: - Vue 2 + vue-router 3 SPA mounted at #content (Files-app pattern) - Reuses Nextcloud's design system primitives (NcContent, NcAppNavigation, NcAvatar, NcDateTime, NcDialog, NcEmptyContent, NcLoadingIcon, NcButton, NcTextField) - Optimistic UI for pin toggling Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Signed-off-by: Frank Karlitschek <karlitschek@users.noreply.github.com>
Member
Author
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.
Adds a new top-level "Office" entry to the app menu that opens a Vue SPA at /apps/richdocuments/overview, providing a single landing page for the user's office work.
Features:
Backend:
Frontend:
Summary
TODO
Checklist