-
Notifications
You must be signed in to change notification settings - Fork 217
Open
Labels
frontendRequires a change to the UIRequires a change to the UIrefactorImproves code without altering behaviorImproves code without altering behavior
Description
We use several Bootstrap 3 plugins. It'd be nice to remove them, for a few reasons:
- The plugins require jQuery, which is one of our heaviest dependencies. We have removed all other uses of jQuery.
- The plugins don't always play well with Vue. For example, our
Popovercomponent has significant limitations due to its use of the Bootstrap popover plugin. - Bootstrap 3 has reached EOL. I doubt that it'd be simple to migrate to Bootstrap 4 or 5. We also don't really want to continue using Bootstrap from a design perspective.
These are the Bootstrap plugins that we currently use:
-
collapse- This is just needed for the
Navbarcomponent I think. - Possibly it won't be needed anymore once we implement Set minimum width #777
- This is just needed for the
-
popover+tooltip- These are needed for the
Popovercomponent. - We use Floating UI for our tooltips, and I'd like to replace these plugins with Floating UI.
- These are needed for the
-
modal- This is needed for the
Modalcomponent. - I doubt this plugin is doing that much, so I think we should just implement the modal functionality ourselves. Our
Modalcomponent does a lot beyond what the plugin does, so I think it'd be better if we could control everything related to it rather than using an external component.
- This is needed for the
-
dropdown- Unlike some of the other plugins, this isn't used in a single generic component. Instead, it's used throughout Frontend, mostly via
dataattributes. - I think the main thing that the plugin's doing is positioning the dropdown menu once the dropdown has been opened. We could probably use Floating UI for that.
- Unlike some of the other plugins, this isn't used in a single generic component. Instead, it's used throughout Frontend, mostly via
-
transition- This is imported, but I'm actually not sure that we use it for anything.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
frontendRequires a change to the UIRequires a change to the UIrefactorImproves code without altering behaviorImproves code without altering behavior
Type
Projects
Status
🕒 backlog