feat(spx-gui): add project displayName with inline editing and project renaming#2841
feat(spx-gui): add project displayName with inline editing and project renaming#2841aofei merged 1 commit intogoplus:devfrom
displayName with inline editing and project renaming#2841Conversation
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
d9b9d63 to
9983bd6
Compare
9983bd6 to
e2acf1f
Compare
e2acf1f to
10e8b9c
Compare
10e8b9c to
e68fc55
Compare
e68fc55 to
711494d
Compare
displayName for projectsdisplayName with inline editing and project renaming
711494d to
7fc7d08
Compare
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
Summary of ChangesThis pull request significantly enhances the user experience by introducing a 'displayName' for projects, allowing for more intuitive identification across the application. It provides users with the flexibility to manage both a human-friendly display name and a technical, URL-safe project name, improving clarity and usability in various interfaces, from project creation to editing and sharing. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Changelog
Activity
|
There was a problem hiding this comment.
Code Review
This pull request introduces a displayName for projects, enhancing user experience by separating the human-friendly name from the URL-safe name. The changes are comprehensive, spanning API definitions, UI components, and data models to support this new field. The implementation includes inline editing for the displayName and a modal-based flow for renaming the project name, which are well-executed. Overall, the code quality is high, and the new features are consistently integrated. I have one suggestion to improve validation for the new displayName field.
Note: Security Review did not run due to the size of the PR.
|
A well-structured feature that cleanly separates |
7fc7d08 to
b84f732
Compare
b84f732 to
ad4a643
Compare
ad4a643 to
b6eefb7
Compare
b6eefb7 to
e74a449
Compare
e74a449 to
39e6aeb
Compare
…ect renaming
Add `displayName` field across the frontend to allow projects to have
a human-friendly display name separate from the URL-safe `name`.
- Add `displayName` to `ProjectData` API type, `SpxProject` model, and
xbp metadata for save/load round-tripping
- Validate `displayName` presence in cloud save logic
- Update all UI components to show `displayName` instead of `name`,
including project items, editor navbar, publish modals, runner
surface, community project page, and page titles
- Provide `displayName` context to copilot for better AI awareness
Add inline display name editing in the editor navbar, and add project
name editing via a warning modal and input modal accessible from the
file menu.
- Add `ProjectModifyNameWarningModal` and `ProjectModifyNameModal` using
`UIForm`, `UIFormItem`, and `UITextInput` for consistent form
handling and validation
- Validate project names to allow letters, numbers, hyphens, and
underscores, with a 100-character length limit
- Rename projects by calling `PATCH /project/{owner}/{name}` directly
from `ProjectModifyNameModal`
- Update `updateProject` to use `PATCH` and allow partial
`UpdateProjectParams`
- Remove rename-specific `SaveOptions.oldName` logic from cloud save
- Navigate to the new project URL after a successful rename
Signed-off-by: Aofei Sheng <aofei@aofeisheng.com>
39e6aeb to
000df97
Compare
Add
displayNamefield across the frontend to allow projects to have a human-friendly display name separate from the URL-safename.displayNametoProjectDataAPI type,SpxProjectmodel, and xbp metadata for save/load round-trippingdisplayNamepresence in cloud save logicdisplayNameinstead ofname, including project items, editor navbar, publish modals, runner surface, community project page, and page titlesdisplayNamecontext to copilot for better AI awarenessAdd inline display name editing in the editor navbar, and add project name editing via a warning modal and input modal accessible from the file menu.
ProjectModifyNameWarningModalandProjectModifyNameModalusingUIForm,UIFormItem, andUITextInputfor consistent form handling and validationPATCH /project/{owner}/{name}directly fromProjectModifyNameModalupdateProjectto usePATCHand allow partialUpdateProjectParamsSaveOptions.oldNamelogic from cloud save