stable

Clone or download

Read-only

feat: init filters dropdown

part of story #35821 Pull request new home page - Filter on Authors This contribution introduces a new lib @tuleap/plugin-pullrequest-selectors-dropdown. It will contain the new graphical element whose role is to provide a way to create filters through a list of attributes + an autcompleter. Since there is a chance for this pattern to be democratized in Tuleap, I chose to do the implementation inside a local library, and as a custom element using hybrids. This way, it should not be hard to reuse the day we want to have such selectors elsewhere because we'll "only" have to move it to tuleap/lib/frontend, and do a bit of renaming in the package.json. How to test: - `make post-checkout` - Go to the pull-requests homepage of a repository and add a parameter `tab=homepage` in the query string of its url --> There is a [+ Add filter] button above the list of pull-requests --> A dropdown opens if you click on it --> There is only one entry "Author" --> Nothing happens if you click it Change-Id: I109333c7d34344023d745dfef35788a67c4d8259

Modified Files

Name
A plugins/pullrequest/scripts/lib/selectors-dropdown/.gitignore +1 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/package.json +31 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/pnpm-lock.yaml +29 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/src/elements/SelectorsDropdown.ts +67 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/src/elements/SelectorsDropdownController.test.ts +43 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/src/elements/SelectorsDropdownController.ts +33 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/src/elements/SelectorsDropdownTemplate.test.ts +75 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/src/elements/SelectorsDropdownTemplate.ts +52 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/src/main.ts +20 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/tsconfig.json +7 −0 Go to diff View file
A plugins/pullrequest/scripts/lib/selectors-dropdown/vite.config.ts +31 −0 Go to diff View file
M plugins/pullrequest/scripts/pullrequest-homepage/package.json +1 −0 Go to diff View file
M plugins/pullrequest/scripts/pullrequest-homepage/pnpm-lock.yaml +7 −4 Go to diff View file
M plugins/pullrequest/scripts/pullrequest-homepage/po/fr_FR.po +6 −0 Go to diff View file
A plugins/pullrequest/scripts/pullrequest-homepage/src/components/Filters/PullRequestListFilters.vue +36 −0 Go to diff View file
M plugins/pullrequest/scripts/pullrequest-homepage/src/components/HomePage.vue +2 −0 Go to diff View file
M plugins/pullrequest/scripts/pullrequest-homepage/vite.config.ts +10 −1 Go to diff View file