-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Repository Config list page #19039
Repository Config list page #19039
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I look at service side look good to me, i did not look at frontend code or tested it. cc @filiptronicek could you do it please?
<thead className="[&_th]:p-3 [&_th]:bg-gray-100 [&_th:first-child]:rounded-tl-md [&_th:last-child]:rounded-tr-md text-semibold"> | ||
<tr className="border-b"> | ||
<th className="w-48">Name</th> | ||
<th className="hidden md:table-cell">Repository URL</th> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps we can strip the "URL" part, as the value we're showing is not really a URL? In the context of this page, "Repository" seems self-explanatory and fine.
@@ -31,25 +59,80 @@ const RepositoryListPage: FC = () => { | |||
|
|||
return ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@@ -37,3 +31,12 @@ export interface ProjectDB extends TransactionalDB<ProjectDB> { | |||
getProjectUsage(projectId: string): Promise<ProjectUsage | undefined>; | |||
updateProjectUsage(projectId: string, usage: Partial<ProjectUsage>): Promise<void>; | |||
} | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lifted these args into an object as the ordering/number of them was getting pretty hairy, especially w/ a couple being optional.
searchTerm: searchOptions.searchTerm || "", | ||
organizationId: searchOptions.organizationId, | ||
}); | ||
// TODO: adjust this to not filter entities, but log errors if any are not accessible for current user |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm going to tackle this in a followup and leave it filtering for now
@@ -78,9 +78,11 @@ export class ConfigurationServiceAPI implements ServiceImpl<typeof Configuration | |||
} | |||
|
|||
const limit = req.pagination?.pageSize || 25; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we have max page size and return invalid argument if a user requests more?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For sure, I'll add this in a followup, need to do some work around pagination/cursors anyways.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah, sorry for the confusion in this area yet, i hope we can settle it today
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think it is blocking since it is under FF, we can resolve with follow up PR?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Found this to work reliably — nice work! I haven't tested multiple users per org, but because all the repos are currently public, I don't believe that will make a difference. (org invite in case you'd want to last-minute test it yourself :).
Changing orgs behaves as expected and the pagionation as well.
d6facf0
to
c8558ed
Compare
/unhold |
Description
Updates the Repository Configuration list page to implement the latest designs. There's still some work to do, but wanted to get this as a first milestone to keep the PR from growing too big. Most of the look and feel are here, and basic functionality of searching/paging should work as well. There are some details around loading indicators, and pagination related state that I plan on addressing in the next round of this UI.
Things that aren't accounted for yet but will be in followups. I've called them out in comments in the code, but for summary:
Summary generated by Copilot
🤖 Generated by Copilot at 09d9d9e
Fixed pagination bug in
getProjects
method ofConfigurationServiceAPI
. This method lists the user's projects in the dashboard.Related Issue(s)
Fixes EXP-876
How to test
Documentation
Preview status
Gitpod was successfully deployed to your preview environment.
Build Options
Build
Run the build with werft instead of GHA
Run Leeway with
--dont-test
Publish
Installer
Add desired feature flags to the end of the line above, space separated
Preview Environment / Integration Tests
If enabled this will build
install/preview
If enabled this will create the environment on GCE infra
Valid options are
all
,workspace
,webapp
,ide
,jetbrains
,vscode
,ssh
. If enabled,with-preview
andwith-large-vm
will be enabled./hold