The v2.0.0 introduces several changes to make the package more consistent and clean. Most notably, the removal of the dependency on the Select component. New features were also introduced. The plugin still only supports Filament v3.
Breaking Changes
Namespace Changes
- The namespace for TableSelect has been changed from
Dvarilek\FilamentTableSelect\Components\View\TableSelect
toDvarilek\FilamentTableSelect\Components\Form\TableSelect
TableSelect Component Changes
- The TableSelect component has been redesigned and no longer requires a suffix action to select related records using a table.
- It's no longer possible to select records from a dropdown, as that option has been removed.
- The TableSelect component no longer extends the Select component—it only borrows some of its functionality. As a result, several methods are no longer available, mainly those related to options and searching. See List of Unavailable Methods below.
- Several methods have been renamed in favor of better consistency within the plugin. See List of Altered Methods below.
- Limiting the number of options that can be selected is done with
maxItems()
instead ofoptionsLimit()
. - The create option action can only be displayed in selection modal.
New Features
Severing the Select dependency created space for implementing a custom view with more customization options.
Customizable Badges & Different Look
You can customize the color and icon of selected options. This can be done for all options or specific options with a callback.
This feature is only available when multi selection is enabled.
The suffix action got replaced by a link action located below the component. The position can be configured. Alternatively, it is possible to open the selection modal right away when clicking on the form input.
Upgrading
List of Altered Methods
modifySelectionAction()
method has been renamed toselectionAction()
modifySelectionTable()
method has been renamed toselectionTable()
modifySelectionConfirmationAction()
method has been renamed toselectionConfirmationAction()
shouldCloseOnSelection()
method has been renamed toshouldCloseAfterSelection()
(the optional argument inselectionConfirmationAction()
has also been renamed)*selectionModalCreateOptionActionPosition()
method has been renamed tocreateOptionActionPosition()
(and now
additionally accepts a callback)*
List of New Methods
Selection Action
selectionActionAlignment()
triggerSelectionActionOnInputClick()
Option Configuration
optionColor()
optionIcon()
optionSize()
optionIconSize()
getOptionColorFromRecordUsing()
getOptionIconFromRecordUsing()
optionExtraAttributes()
List of Unavailable Methods
Native to Plugin.
modifySelectionModalCreateOptionAction()
method has been removed (usecreateOptionAction()
now instead`)*hasCreateOptionActionInSelectionModal()
method has been removedcreateOptionActionOnlyVisibleInSelectionModal()
method has been removed
Methods removed because of removing Select dependency
boolean()
method has been removedmanageOptionActions()
method has been removedmanageOptionForm()
method has been removededitOptionModalHeading()
method has been removededitOptionAction()
method has been removedgetEditOptionActionForm()
method has been removedhasEditOptionActionFormSchema()
method has been removededitOptionForm()
method has been removedupdateOptionUsing()
method has been removedgetUpdateOptionUsing()
method has been removedgetEditOptionActionName()
method has been removedgetEditOptionAction()
method has been removedgetEditOptionActionFormData()
method has been removedfillEditOptionActionFormUsing()
method has been removedgetCreateOptionActionName()
method has been removedgetEditOptionModalHeading()
method has been removedgetSearchResultsUsing()
method has been removedtransformOptionsForJsUsing()
method has been removedsearchable()
method has been removedposition()
method has been removedmaxItemsMessage()
method has been removedoptionsLimit()
method has been removedgetPosition()
method has been removedgetSearchColumns()
method has been removedgetSearchResults()
method has been removedgetSearchResultsForJs()
method has been removedgetOptionsForJs()
method has been removedgetOptionLabelsForJs()
method has been removedisSearchable()
method has been removedhasDynamicOptions()
method has been removedhasDynamicSearchResults()
method has been removedgetOptionsLimit()
method has been removedgetMaxItemsMessage()
method has been removedforceSearchCaseInsensitive()
method has been removedisSearchForcedCaseInsensitive()
method has been removedrefreshSelectedOptionLabel()
method has been removedallowHtml()
method has been removedisHtmlAllowed()
method has been removednative()
method has been removedisNative()
method has been removedpreload()
method has been removedisPreloaded()
method has been removednoSearchResultsMessage()
method has been removedsearchDebounce()
method has been removedsearchingMessage()
method has been removedsearchPrompt()
method has been removedsearchLabels()
method has been removedsearchValues()
method has been removedgetNoSearchResultsMessage()
method has been removedgetSearchPrompt()
method has been removedshouldSearchLabels()
method has been removedshouldSearchValues()
method has been removedgetSearchableOptionFields()
method has been removedgetSearchDebounce()
method has been removedgetSearchingMessage()
method has been removeddisableOptionWhen()
method has been removedgetEnabledOptions()
method has been removedisOptionDisabled()
method has been removedhasDynamicDisabledOptions()
method has been removeddisableOptionsWhenSelectedInSiblingRepeaterItems()
method has been removedfixIndistinctState()
method has been removedselectablePlaceholder()
method has been removeddisablePlaceholderSelection()
method has been removedcanSelectPlaceholder()
method has been removedextraInputAttributes()
method has been removedgetExtraInputAttributes()
method has been removedgetExtraInputAttributeBag()
method has been removedloadingMessage()
method has been removedgetLoadingMessage()
method has been removednestedRecursiveRules()
method has been removedgetNestedRecursiveValidationRules()
method has been removedoptions()
method has been removedgetOptions()
method has been removedextraAlpineAttributes()
method has been removedgetExtraAlpineAttributes()
method has been removedgetExtraAlpineAttributeBag()
method has been removed
Documentation
Documentation has been updated to be up to date and to include all new features.