diff --git a/packages/forms/resources/views/components/checkbox.blade.php b/packages/forms/resources/views/components/checkbox.blade.php index ed52084d33..1a27e06dd4 100644 --- a/packages/forms/resources/views/components/checkbox.blade.php +++ b/packages/forms/resources/views/components/checkbox.blade.php @@ -7,7 +7,9 @@ :label="$formComponent->getLabel()" :required="$formComponent->isRequired()" > - + @if ($formComponent->isInline()) + + @endif isAutofocused() ? 'autofocus' : null !!} {!! $formComponent->isDisabled() ? 'disabled' : null !!} @@ -18,5 +20,7 @@ class="rounded text-primary-600 shadow-sm focus:border-primary-700 focus:ring focus:ring-blue-200 focus:ring-opacity-50 {{ $errors->has($formComponent->getName()) ? 'border-danger-600 ' : 'border-gray-300' }}" {!! Filament\format_attributes($formComponent->getExtraAttributes()) !!} /> - + @if ($formComponent->isInline()) + + @endif diff --git a/packages/forms/resources/views/components/toggle.blade.php b/packages/forms/resources/views/components/toggle.blade.php index 123cf4fd4b..5eedbe0042 100644 --- a/packages/forms/resources/views/components/toggle.blade.php +++ b/packages/forms/resources/views/components/toggle.blade.php @@ -7,7 +7,9 @@ :label="$formComponent->getLabel()" :required="$formComponent->isRequired()" > - + @if ($formComponent->isInline()) + + @endif - + @if ($formComponent->isInline()) + + @endif diff --git a/packages/forms/src/Components/Checkbox.php b/packages/forms/src/Components/Checkbox.php index 9f871ba6df..8b30ad1484 100644 --- a/packages/forms/src/Components/Checkbox.php +++ b/packages/forms/src/Components/Checkbox.php @@ -5,9 +5,12 @@ namespace Filament\Forms\Components; class Checkbox extends Field { use Concerns\CanBeAutofocused; + use Concerns\CanBeInline; protected function setUp() { $this->default(false); + + $this->inline(); } } diff --git a/packages/forms/src/Components/Concerns/CanBeInline.php b/packages/forms/src/Components/Concerns/CanBeInline.php new file mode 100644 index 0000000000..d8bddd91df --- /dev/null +++ b/packages/forms/src/Components/Concerns/CanBeInline.php @@ -0,0 +1,31 @@ +configure(function () { + $this->isInline = true; + }); + + return $this; + } + + public function stacked() + { + $this->configure(function () { + $this->isInline = false; + }); + + return $this; + } + + public function isInline() + { + return $this->isInline; + } +} diff --git a/packages/forms/src/Components/Toggle.php b/packages/forms/src/Components/Toggle.php index 1479a7d545..9c33a3b197 100644 --- a/packages/forms/src/Components/Toggle.php +++ b/packages/forms/src/Components/Toggle.php @@ -8,6 +8,7 @@ use Filament\Forms\Components\Field; class Toggle extends Field { use Concerns\CanBeAutofocused; + use Concerns\CanBeInline; protected $onIcon; @@ -16,6 +17,8 @@ class Toggle extends Field protected function setUp() { $this->default(false); + + $this->inline(); } public function onIcon($icon) diff --git a/src/Resources/Forms/Components/Concerns/CanBeInline.php b/src/Resources/Forms/Components/Concerns/CanBeInline.php new file mode 100644 index 0000000000..bdf6860ad8 --- /dev/null +++ b/src/Resources/Forms/Components/Concerns/CanBeInline.php @@ -0,0 +1,8 @@ +