Consider creating Rails helper/ViewComponent for skeleton loader

Current server-rendered skeleton loaders rely on the deprecated GlSkeletonLoading Vue component's classes (.skeleton-line-[123]) for styling. Eventually that component will be removed, which will break these instances.

This issue is about creating a new skeleton loader helper or ViewComponent that does not rely on the deprecated styles. It should match the styling of the GlSkeletonLoader in GitLab UI.

At the time of writing, there are three uses of server rendered skeleton loaders:

There is also some CSS to remove, if possible:

Alternatives to consider

It seems a bit heavy-handed to create a helper or ViewComponent for two instances of markup that by design should only be briefly visible. So, here are a couple of alternative approaches to consider:

  • Just delete these two server-rendered instances, and don't implement the helper/ViewComponent.
  • Using the existing gl_loading_icon helper instead.
Edited by Elwyn Benson