Esri / calcite-design-system

A monorepo containing the packages for Esri's Calcite Design System
https://developers.arcgis.com/calcite-design-system/
Other
282 stars 76 forks source link

Introduce pattern to notify on resource loading (to support skeleton state designs) #5162

Open jcfranco opened 2 years ago

jcfranco commented 2 years ago

Description

calcite-avatar, calcite-tip and other resource loading components, lack a way to notify developers that the component has fully loaded and ready to be displayed.

Acceptance Criteria

An events or some other mechanism to allow consumers to know when resources have loaded and the component can be displayed.

Relevant Info

Ideas

Related issue: https://github.com/Esri/calcite-components/issues/1088 Blocked issues: #7520

Which Component

Example Use Case

A wrapping component with skeleton state that is waiting for calcite-avatar's image to load before displaying it.

geospatialem commented 10 months ago

There is a similar component available as part of Hub, we should consider some discussions with team members as we move forward with the effort. refer to https://github.com/Esri/calcite-design-system/issues/1088#issuecomment-705139936

Virtualization effort for https://github.com/Esri/calcite-design-system/issues/7384 is dependent on the skeleton state.

jcfranco commented 10 months ago

Automated testing would also benefit from this (e.g., icon done fetching icon path data).

dmartini-zrh commented 6 months ago

Example of use case from Scene Viewer: Our welcome screen is currently displayed as soon as recent/featured scene details are loaded. This results in a significant delay / diminished value: users figure out where to start before it appears.

So, we'd like to:

  1. display a skeleton state
  2. load all resources

Draft: skeleton-loading

Please note:

Our draft in SVG here ``` ```