feat(GlSkeletonLoader): migrate GlSkeletonLoading functionality into GlSkeletonLoader
What does this MR do?
See #872 (closed)
Original thread:
https://gitlab.slack.com/archives/CH9QG9TAQ/p1594048978110800
Deprecation plan:
-
Get gitlab!38663 (merged) reviewed and ready to merge. -
Merge this MR -
Update @gitlab/ui
dependency in integration MR and merge. -
Open a MR that exports GlSkeletonLoading
asGlDeprecatedSkeletonLoading
-
- export { default as GlSkeletonLoading } from './src/components/base/skeleton_loading/skeleton_loading.vue' + export { default as GlSkeletonLoading, default as GlDeprecatedSkeletonLoading } from './src/components/base/skeleton_loading/skeleton_loading.vue';
-
-
Open up a MR in gitlab-org/gitlab
to importGlDeprecatedSkeletonLoading
and alias it back toGlSkeletonLoading
-
- import { GlSkeletonLoading } from '@gitlab/ui'; + import { GlDeprecatedSkeletonLoading as GlSkeletonLoading } from '@gitlab/ui';
-
-
Create an Epic that identifies all the GlDeprecatedSkeletonLoading
components that need to be migrated toGlSkeletonLoader
-
Complete the epic -
Double check that GlSkeletonLoading
isn't being used in any othergitlab-org
codebases -
Remove GlSkeletonLoading
from@gitlab/ui
and release a new major version.
Context
I decided to switch to using a render function for two reasons:
- I wanted to keep this component
functional
to keep it performant - It is hard to create helper methods when using a
template
because thescript
doesn't have access to thecontext
. See https://github.com/vuejs/vue/issues/7995 for more info.
Does this MR meet the acceptance criteria?
Conformity
-
Code review guidelines. -
GitLab UI's contributing guidlines. -
If it changes a Pajamas-compliant component's look & feel, the MR has been reviewed by a UX designer. - [-] If it changes GitLab UI's documentation guidelines, the MR has been reviewed by a Technical Writer.
-
If the MR changes a component's API, integration MR(s) have been opened in the following projects to ensure that the @gitlab/ui
package can be upgraded quickly after the changes are released:-
GitLab: mr_url -
Customers Portal: mr_url - Does not use
GlSkeletonLoading
orGlSkeletonLoader
- https://gitlab.com/gitlab-org/customers-gitlab-com/-/merge_requests/1680/pipelines
- Does not use
-
Status Page: mr_url - Does not use
GlSkeletonLoading
orGlSkeletonLoader
- status-page!96 (closed)
- Does not use
-
-
Added the ~"component:*"
label(s) if applicable.
Edited by Peter Hegman