Migrate groups_select to GlListbox
What does this MR do and why?
This migrates group selectors from select2 to GlListbox.
Notes:
- As far as I could tell, the
skipGroups,allAvailableandminAccessLevelparams are never passed to the existing group selectors. I have therefore opted not to backport them to keep this MR small. I can see how they could be useful, but I suggest that we keep only the features we actually need for now, and we can iterate to re-add those in the future if needed. - The
select2selector supports infinite scrolling, butGlListboxdoes not. Some work is being done in gitlab-ui#1956 (closed) and gitlab-ui!3098 (merged) to enable this capability. In the meantime, if this is deemed absolutely necessary, we can keep the feature flag disabled by default.
Screenshots or screen recordings
| Page | Before | After |
|---|---|---|
| Admin Area > Settings > Templates > Custom project templates | ![]() |
![]() |
| :group > Settings > General > Custom project templates | ![]() |
![]() |
How to set up and validate locally
- Run
yarnto install the required packages. - Enable the
vue_group_selectfeature flag.
echo "Feature.enable(:vue_group_select)" | rails c
- Navigate to the affected pages (see table above).
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Related to #374010 (closed)
Edited by Paul Gascou-Vaillancourt



