Composant Skeleton Loader Angular | ng-hub-ui-skeleton

Placeholders de chargement skeleton Angular avec presets réutilisables, templates DSL inline, valeurs responsive et variables CSS pour les états shimmer.

Référence API

Voici le contrat complet de skeleton : tout ce que vous pouvez lier, écouter, projeter et personnaliser, réuni au même endroit. Branchez ce dont vous avez besoin et stylisez ce que vous voulez — c’est standalone et compatible avec les signals.

Inputs

Réglez skeleton à votre goût avec 7 inputs. Liez-les comme n’importe quel @Input Angular.

NomTypePar défautDescription
presetstring | nullnullNom d'un preset fourni ou enregistré. Lorsqu'il est fourni, le composant résout les valeurs par défaut, les variants et la composition d'alias à partir du registre de presets.
templatestring | HubSkeletonTemplateDefinition | nullnullChaîne DSL inline de type Emmet ou objet de définition de modèle avec des remplacements de breakpoint responsives optionnels.
paramsHubSkeletonParams{}Paramètres sérialisables interpolés dans les espaces réservés `{{param}}` avant l'analyse et l'expansion du preset.
variantstring | nullnullNom de variant de preset optionnel, tel que `compact`, utilisé pour changer les valeurs par défaut du modèle ou remplacer le modèle de preset de base.
animatedbooleantrueActive ou désactive l'animation shimmer tout en conservant la même mise en page de l'espace réservé.
appearance'default' | 'subtle' | 'contrast''default'Modifie l'intensité visuelle des surfaces du skeleton sans changer la mise en page résolue.
ariaLabelstring'Loading placeholder'Libellé accessible appliqué à l'élément conteneur pour les technologies d'assistance.

Outputs

Aucun output documenté pour le moment.

Templates

Faites-le vôtre — 3 emplacements de template vous permettent de projeter votre propre balisage.

NomDescriptionExemple
Bundled PresetsNoms de presets disponibles dans le catalogue initial : card, list-item, table-row, detail-view, form-section, dashboard-widget, stat-card, chart-panel, profile-summary, master-detail, kanban-card, feed-item, search-result, table-toolbar, filter-bar et empty-state-skeleton.<hub-skeleton preset="table-row" [params]="{ columns: 4 }"></hub-skeleton>
Preset DSLSyntaxe de chaîne compacte qui prend en charge les noms de nœuds, les modificateurs, la composition de frères avec `+`, l'imbrication d'enfants avec `>` et la répétition avec `*N`.<hub-skeleton template="stack(gap:12)>circle(size:40)+stack(gap:8)>line(width:42%)+line(width:72%)"></hub-skeleton>
provideHubSkeletonPresetsEnregistre des presets personnalisés dans l'injection de dépendances d'Angular afin que n'importe quel composant puisse les rendre par leur nom.providers: [provideHubSkeletonPresets([{ name: 'profile-card', template: 'stack(gap:16)>circle(size:72)+line(width:48%)' }])]

Variables CSS

Personnalisez chaque pixel avec 5 variables CSS. Remplacez-les au niveau de :root ou limitez-les à un conteneur.

Tokens visuels

Propriétés CSS personnalisées principales exposées par le composant hôte.

VariablePar défautTypeDescription
--hub-skeleton-bgrgba(148, 163, 184, 0.18)color Couleur de base de l'espace réservé utilisée pour les surfaces visibles du skeleton.
--hub-skeleton-highlightrgba(255, 255, 255, 0.52)color Couleur de surbrillance utilisée par le dégradé shimmer.
--hub-skeleton-radius12pxlength Rayon de bordure par défaut pour les nœuds block et line.
--hub-skeleton-gap12pxlength Espacement par défaut utilisé par les nœuds stack et grid lorsqu'il n'est pas remplacé par des modificateurs.
--hub-skeleton-animation-duration1.35stransition Durée du cycle d'animation shimmer.

Styles et theming

Aucun exemple de style n’est encore documenté. Cette section inclura des recettes de personnalisation et des exemples de theming.