Pickers
Table of Contents
Traits
- CustomAssetPickerTrait
- Custom code picker: a multiplier row in the "Custom code" tab of the page form selects a
{@see CustomAsset} from the library. Like
{@see \App\UI\Admin\Blog\Presenters\Traits\Pickers\GalleryPickerTrait} (multiplier
picker without ordering): the code itself carries the relation (M:N to `Page`), the tab
only selects which id belongs to the set.
- MenuItemPickerTrait
- Parent menu item picker, like {@see PagePickerTrait}, but the parent must come from the
same menu: the suggestions and the modal are scoped by the current `$this->menuId`.
- PagePickerTrait
- Front end page picker: the model of a reusable picker trait. A presenter uses it and calls
{@see pagePicker()} in `pickers()`; the trait brings its own manager (`#[Inject]`), so it
works in any presenter without further configuration.
- PaymentPickerTrait
- Payment picker (single field): suggestions by payment code plus a modal over the System
Payment grid ("Search" button). Like {@see UserPickerTrait}.
- PickerHostTrait
- Host trait for {@see Picker} components in a presenter.
- PrivilegeGroupPickerTrait
- Privilege group picker: moves a privilege into another group without opening the whole group.
- RegionPickerTrait
- Parent region picker (single field, self-reference); follows
{@see PagePickerTrait}. The manager carries the
trait itself (`#[Inject]`), so the presenter must not take it in the constructor (property collision).
- TreePositionHostTrait
- Node position in a tree edit form: a shared {@see TreePosition} component with the grid's move-to
modal, so the conversion of the choice into a move exists once.
- UserPickerTrait
- User picker: the canonical pattern for "many objects have a user" (advert owner, article author, ...).