null, 'badgeColor' => 'primary', 'badgeSize' => Size::ExtraSmall, 'color' => 'primary', 'disabled' => false, 'form' => null, 'formId' => null, 'href' => null, 'icon' => null, 'iconAlias' => null, 'iconSize' => null, 'keyBindings' => null, 'label' => null, 'loadingIndicator' => true, 'size' => Size::Medium, 'spaMode' => null, 'tag' => 'button', 'target' => null, 'tooltip' => null, 'type' => 'button', ])); foreach ($attributes->all() as $__key => $__value) { if (in_array($__key, $__propNames)) { $$__key = $$__key ?? $__value; } else { $__newAttributes[$__key] = $__value; } } $attributes = new \Illuminate\View\ComponentAttributeBag($__newAttributes); unset($__propNames); unset($__newAttributes); foreach (array_filter(([ 'badge' => null, 'badgeColor' => 'primary', 'badgeSize' => Size::ExtraSmall, 'color' => 'primary', 'disabled' => false, 'form' => null, 'formId' => null, 'href' => null, 'icon' => null, 'iconAlias' => null, 'iconSize' => null, 'keyBindings' => null, 'label' => null, 'loadingIndicator' => true, 'size' => Size::Medium, 'spaMode' => null, 'tag' => 'button', 'target' => null, 'tooltip' => null, 'type' => 'button', ]), 'is_string', ARRAY_FILTER_USE_KEY) as $__key => $__value) { $$__key = $$__key ?? $__value; } $__defined_vars = get_defined_vars(); foreach ($attributes->all() as $__key => $__value) { if (array_key_exists($__key, $__defined_vars)) unset($$__key); } unset($__defined_vars, $__key, $__value); ?> IconSize::Small, Size::Large, Size::ExtraLarge => IconSize::Large, default => null, }; $wireTarget = $loadingIndicator ? $attributes->whereStartsWith(['wire:target', 'wire:click'])->filter(fn ($value): bool => filled($value))->first() : null; $hasLoadingIndicator = filled($wireTarget) || ($type === 'submit' && filled($form)); if ($hasLoadingIndicator) { $loadingIndicatorTarget = html_entity_decode($wireTarget ?: $form, ENT_QUOTES); } $hasTooltip = $hasTooltip = filled($tooltip); ?> < x-bind:id="$id('key-bindings')" x-mousetrap.global.map(fn (string $keyBinding): string => str_replace('+', '-', $keyBinding))->implode('.')); ?>="document.getElementById($el.id)?.click()" x-tooltip="{ content: toHtml() ?>, theme: $store.theme, allowHTML: toHtml() ?>, }" merge([ 'aria-disabled' => $disabled ? 'true' : null, 'aria-label' => $label, 'disabled' => $disabled && blank($tooltip), 'form' => $formId, 'type' => $tag === 'button' ? $type : null, 'wire:loading.attr' => $tag === 'button' ? 'disabled' : null, 'wire:target' => ($hasLoadingIndicator && $loadingIndicatorTarget) ? $loadingIndicatorTarget : null, ], escape: false) ->merge([ 'title' => $hasTooltip ? null : $label, ], escape: true) ->when( $disabled && $hasTooltip, fn (ComponentAttributeBag $attributes) => $attributes->filter( fn (mixed $value, string $key): bool => ! str($key)->startsWith(['href', 'x-on:', 'wire:click']), ), ) ->class([ 'fi-icon-btn', 'fi-disabled' => $disabled, ($size instanceof Size) ? "fi-size-{$size->value}" : (is_string($size) ? $size : ''), ]) ->color(IconButtonComponent::class, $color)); ?> > $hasLoadingIndicator, 'wire:target' => $hasLoadingIndicator ? $loadingIndicatorTarget : false, ])), size: $iconSize)); ?> '', 'wire:target' => $loadingIndicatorTarget, ])), size: $iconSize)); ?>
color(BadgeComponent::class, $badgeColor)->class([ 'fi-badge', ($badgeSize instanceof Size) ? "fi-size-{$badgeSize->value}" : (is_string($badgeSize) ? $badgeSize : ''), ])); ?> >
>