isHidden = $condition; return $this; } /** * @param string | array $livewireComponents */ public function hiddenOn(string | array $livewireComponents): static { $this->hidden(static function (HasTable $livewire) use ($livewireComponents): bool { foreach (Arr::wrap($livewireComponents) as $livewireComponent) { if ($livewire instanceof $livewireComponent) { return true; } } return false; }); return $this; } public function visible(bool | Closure $condition = true): static { $this->isVisible = $condition; return $this; } /** * @param string | array $livewireComponents */ public function visibleOn(string | array $livewireComponents): static { $this->visible(static function (HasTable $livewire) use ($livewireComponents): bool { foreach (Arr::wrap($livewireComponents) as $livewireComponent) { if ($livewire instanceof $livewireComponent) { return true; } } return false; }); return $this; } public function isHidden(): bool { if ($this->evaluate($this->isHidden)) { return true; } return ! $this->evaluate($this->isVisible); } public function isVisible(): bool { return ! $this->isHidden(); } }