Componente

Block UI

Um overlay que bloqueia uma região — ou a tela inteira — enquanto trabalha. Desabilita o conteúdo envolvido, mostra spinner, ícone ou mensagem personalizada, e limpa ao desbloquear.

Bloqueado com spinner

Autumn walk

Oak leaves along the river — Freiburg.

Taken Nov 3, 2026 · Black Forest.

import { ChangeDetectionStrategy, Component, signal } from '@angular/core';

import { HbBlockUiComponent, HbButtonComponent } from '@herbst/ui';

@Component({
  selector: 'hb-demo-block-ui-spinner',
  imports: [HbBlockUiComponent, HbButtonComponent],
  template: `
    <div class="w-full max-w-sm">
      <hb-block-ui [hbBlocked]="loading()" hbSpinner class="rounded-lg border border-border">
        <div class="flex flex-col gap-1 p-6">
          <h3 class="font-medium">Autumn walk</h3>
          <p class="text-sm text-muted-foreground">Oak leaves along the river — Freiburg.</p>
          <p class="text-sm text-muted-foreground">Taken Nov 3, 2026 · Black Forest.</p>
        </div>
      </hb-block-ui>

      <button hb-button hbSize="sm" class="mt-3" [hbDisabled]="loading()" (click)="reload()">
        Reload
      </button>
    </div>
  `,
  changeDetection: ChangeDetectionStrategy.OnPush,
})
export class HbDemoBlockUiSpinnerComponent {
  protected readonly loading = signal(false);

  protected reload(): void {
    this.loading.set(true);
    setTimeout(() => this.loading.set(false), 1500);
  }
}

Ícone e mensagem personalizada

October in the Black Forest

This photo was archived and can no longer be edited.

Archived — read only

Tela cheia

Referência de API

hb-block-ui

PropriedadeDescriçãoTipoPadrão
[hbBlocked] Mostra o overlay e torna o conteúdo envolvido inerte. boolean false
[hbFullScreen] Cobre toda a viewport em vez de apenas a região envolvida. boolean false
[hbSpinner] Mostra o spinner embutido no overlay. boolean false
[hbIcon] Ícone exibido no overlay quando não há spinner. string ''
[hbBlockUiContent] Conteúdo do overlay projetado, como uma mensagem de status. slot
[class] Classes CSS extras mescladas no host. O conteúdo padrão é a região sendo bloqueada. string ''