baseCRUD()->tableLayout('fixed') ->headerToolbar([ $this->createTypeButton('drawer', 'md'), ...$this->baseHeaderToolBar(), ]) ->filter($this->baseFilter()->body([ amis()->GroupControl()->mode('horizontal')->body([ amis()->TextControl('title', __('admin.timelines.title'))->columnRatio(3) ->placeholder(__('admin.timelines.title')), ]), ])) ->columns([ // amis()->TableColumn('id', __('admin.id'))->sortable(true)->width('50px'), amis()->TableColumn('title', __('admin.timelines.title'))->width('300px'), amis()->TableColumn('cover_url', __('admin.timelines.cover'))->type('image')->height('50px')->width('150px')->enlargeAble(true), amis()->TableColumn('awarded_date', __('admin.timelines.awarded_date')), amis()->TableColumn('is_enable', __('admin.timelines.is_enable'))->type('switch'), amis()->TableColumn('created_at', __('admin.created_at'))->type('datetime')->sortable(true), amis()->Operation()->label(__('admin.actions'))->buttons([ $this->rowEditTypeButton('drawer', 'md'), $this->rowDeleteButton(), ]) ]); return $this->baseList($crud); } public function form($isEdit = false): Form { return $this->baseForm()->panelClassName('px-0')->body([ amis()->Grid()->columns([ amis()->Wrapper()->body([ amis()->TextControl('title', __('admin.timelines.title'))->required(true), amis()->TextareaControl('description', __('admin.timelines.description')), Components::make()->cropImageControl('cover', __('admin.timelines.cover')), amis()->DateControl('awarded_date', __('admin.timelines.awarded_date'))->format('YYYY-MM-DD')->required(true), Components::make()->sortControl('sort', __('admin.timelines.sort')), amis()->SwitchControl('is_enable', __('admin.timelines.is_enable'))->value(false), ]) ]), ]); } public function detail(): Form { return $this->baseDetail()->body([]); } }