Всех приветствую!
Вышел релиз 2.22.0 “Citrus Burst”. 🌙 Расскажу какие нововведения произошли.
Иконки для Collapse и Block
Для компонентов Collapse и Block появилась возможность указывать иконку
Block::make()->icon('heroicons.outline.users')
Collapse::make()->icon('heroicons.outline.users')
Json модификатор таблицы
Возможность модифицировать таблицу и кнопки Json поля
Json::make()->modifyTable(fn(TableBuilder $table, bool $preview) => $table->customAttributes([]))
Json::make()->modifyRemoveButton(fn(ActionButton $button) => $button->customAttributes([]))
Profile компонент с guard
Возможность изменить guard в Profile компоненте
Profile::make(guard: 'custom')
MoonShineAuth::guard('custom')->user()
Tabs со слотами для вкладок
Удобное добавление вкладок для Tabs из blade
<x-moonshine::tabs :tabs="[
'tab_1' => 'Таб 1',
'tab_2' => 'Таб 2',
'tab-3' => 'Таб 3',
]">
<x-slot:tab_1>
Таб 1 content
x-slot>
<x-slot name="tab_2">
Таб 2 content
x-slot>
<x-slot:tab-3>
Таб 3 content
x-slot>
x-moonshine::tabs>
InputExtension copy с шаблонным значением
Если необходимо не просто скопировать значение, а сделать это на основе шаблона с шорткодом
Text::make()->copy() // Скопируется только значение поля
Text::make()->copy('https://domain.com?token={{value}}') // Скопируется https://domain.com?token=значение поля
Модификаторы таблицы прямо из ModelResource
Благодаря этой фиче вы сможете заменить thead или tbody или tfoot, а также добавить элементы в таблицу в tbody до первого row и после
// replace thead content (use string or component to string)
public function thead(): ?Closure
{
return static fn(Fields $headFields): string => 'Title ';
}
// replace tbody content (use string or component to string)
public function tbody(): ?Closure
{
return static fn(Collection $rows): string => 'Title ';
}
// replace tfoot content (use string or component to string)
public function tfoot(): ?Closure
{
return static fn(ActionButtons $bulkButtons): string => 'Title ';
}
// add before first tbody row
public function tbodyBefore(): ?Closure
{
return static fn(Collection $rows): string => 'Before ';
}
// add after last tbody row
public function tbodyAfter(): ?Closure
{
return static fn(Collection $rows): string => 'After ';
}
Рубрика BugBusters 🐛
- Стили для иконок Collapse/Block от @DissNik in PR
- Проблема с Flex от @DissNik in PR
- Проблема с Range полями в фильтрах от @DissNik in PR
- Передача значений полей в Div компонент от @lee-to in PR
- canSee для табов от @lee-to in PR
- Проблема что canSee частично работал с полями в TableBuilder от@lee-to in PR
- Поддержка поля Position в экспорте от @lee-to in PR
- Проблема HasMany и saveFilterState от @lee-to in PR
https://github.com/moonshine-software/moonshine/compare/2.21.2...2.22.0
Aļaksejs