Merged
Conversation
added 16 commits
June 13, 2025 14:47
…ndom password generation
…with file download functionality
…rotection and file download options
… and arrays of files
…updates, component improvements, and code cleanup
There was a problem hiding this comment.
Pull Request Overview
This PR implements UI enhancements and refactorings aimed at modernizing the app look and feel while improving user experience and code maintainability. Key changes include a redesigned header and footer with theme toggling functionality, the introduction of reusable components (PasswordInput and SecretDisplay), and code cleanup such as the removal of obsolete API code and centralized form reset logic.
Reviewed Changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| ui/src/utils/passwordGenerator.js | Added a secure random password generator function. |
| ui/src/utils/fileDownloader.js | Introduced a utility to trigger file downloads via browser Blob objects. |
| ui/src/stores/formStore.js | Implemented a reactive store to facilitate form resets across components. |
| ui/src/services/api.js | Added API service functions for backend interactions using centralized error messages. |
| ui/src/router/index.js | Updated router configuration with corrected import paths and route definitions. |
| ui/src/pages/View.vue | Refactored view page to use the SecretDisplay component and updated UI elements/styles. |
| ui/src/pages/ErrorGeneral.vue | Enhanced the general error page design with modern Vuetify components. |
| ui/src/pages/Error404.vue | Improved the 404 error page styling and layout for better responsiveness. |
| ui/src/pages/Create.vue | Updated creation form to use the new PasswordInput component and centralize form reset logic. |
| ui/src/main.js | Configured custom Vuetify themes with theme switching functionality integrated. |
| ui/src/components/SecretDisplay.vue | Added a component to manage secret display including file download and copy-to-clipboard. |
| ui/src/components/PasswordInput.vue | Created a reusable password input component with visibility toggle and random generation. |
| ui/src/assets/style.css | Applied global styling updates, including updated font ("Inter") and a gradient background. |
| ui/src/App.vue | Refactored header/footer structure with theme toggle and form reset integration. |
| CHANGELOG.md | Updated changelog to document the improvements and refactorings introduced in this release. |
Comments suppressed due to low confidence (1)
ui/src/pages/Create.vue:115
- [nitpick] Consider renaming the 'files' variable to 'selectedFiles' for improved clarity, as it better represents that these are the files selected by the user and distinguishes it from the singular 'fileBlob'.
watch(files, (newFiles) => {
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.
This pull request introduces several enhancements and refactorings to the UI, focusing on improving user experience, visual design, and code maintainability. Key changes include a redesigned header and footer, theme switching functionality, integration of reusable components, and removal of unused API code.
UI Enhancements:
v-toolbarwithv-app-barfor a modern look, added theme toggle functionality, and adjusted footer styling for better visual consistency. (ui/src/App.vue, ui/src/App.vueL5-L32)ui/src/pages/Error404.vue, [1] [2]Theme and Styling Updates:
ui/src/main.js, ui/src/main.jsR14-R58)ui/src/assets/style.css, [1] [2]Component Enhancements:
PasswordInput.vueto encapsulate password handling logic, including visibility toggling and random password generation. (ui/src/components/PasswordInput.vue, ui/src/components/PasswordInput.vueR1-R41)SecretDisplay.vueto handle secret copying and file downloading functionality with user-friendly alerts. (ui/src/components/SecretDisplay.vue, ui/src/components/SecretDisplay.vueR1-R47)Code Cleanup and Refactoring:
api.jsfile, simplifying the codebase and reducing maintenance overhead. (ui/src/api.js, ui/src/api.jsL1-L79)Create.vueto use a centralized store for form reset functionality, improving code organization and reusability. (ui/src/pages/Create.vue, [1] [2]