Closed mszabeh closed 11 months ago
یک مورد یادم رفت بگم در نسخه فیلامنت 2 مشکلی نداشتیم در نسخه 3 این اتفاق میفته
یک ریپوزیتوری پابلیک درست کنید حداقل کدی که لازم هست تا این باگ reproduce بشه را داخلش بذارید لینکش اینجا بذارید تا بررسی کنم.
`public static function table(Table $table): Table { return $table ->striped() ->columns([ TextColumn::make("id") ->sortable() ->searchable(),
TextColumn::make("title")
->label('عنوان')
->sortable()
->searchable()
->wrap(),
TextColumn::make("status")
->label('وضعیت')
->sortable()
->badge()
->size('sm'),
TextColumn::make('views')
->label('بازدید')
->sortable()
->size('xs'),
TextColumn::make('created_at')
->label('تاریخ')
->sortable()
->size('sm'),
])
->filters([
Filter::make('created_at')
->form([
DateTimePicker::make('created_from')
->label('از تاریخ')
->jalali()
->firstDayOfWeek(6)
->closeOnDateSelection()
->native(false),
DateTimePicker::make('created_until')
->label('تا تاریخ')
->jalali()
->firstDayOfWeek(6)
->closeOnDateSelection()
->native(false),
])
->query(function (Builder $query, array $data): Builder {
return $query
->when(
$data['created_from'],
fn (Builder $query, $date): Builder => $query->where('created_at', '>=', $date),
)
->when(
$data['created_until'],
fn (Builder $query, $date): Builder => $query->where('created_at', '<=', $date),
);
})
->indicateUsing(function (array $data): array {
$indicators = [];
if ($data['created_from'] ?? null) {
$indicators['created_from'] = 'از تاریخ ' . verta($data['created_from'])->format('H:i - Y/m/d');
}
if ($data['created_until'] ?? null) {
$indicators['created_until'] = 'تا تاریخ' . verta($data['created_until'])->format('H:i - Y/m/d');
}
return $indicators;
}),
]);
}
`
با این قسمت از کد میتونید تست کنید؟
نگاه کنید در حالت کلی چیزی که ما نوشتیم برای استفاده در فرم ها بوده نه فیلتر و خب اگر بخواد در فیلتر ها استفاده بشه باید ما یک کلاس جدید تعریف کنیم. حالا به اینصورتی که شما نوشتید احتمالا بشه استفاده کرد ولی باید تست بشه. من سعی میکنم تا جمعه شب اگر وقت کردم روی این مشکل کار کنم اگر هم خودتان تونستید مشکل را پیدا کنید و رفع کنید خوشحال میشم PR بزنید.
بله حتما ممنون از شما
من یک اسکرین جدید میفرستم شاید در پیداکردن مشکل بتونه کمک کنه
یکی از توابع این قسمت کد رو استایل دهی میکنه <div x-ref="panel" در قسمت اینسپکت تو فیلم کامل مشخصه
یک نکته دیگه هم که شاید کمک کنه: وقتی دایرکشن رو روی حالت ltr میذاریم بدون مشکل اجرا میشه
@mszabeh این باگ ربطی به پلاگین ما نداره کلا شما نسخه فیلامنت را هم استفاده کنید روی RTL این باگ را داره داخل ریپو رسمی فیلامنت این مشکل گزارش کنید به محض برطرف شدن این مسئله توی خود فیلامنت من هم بروز میکنم پلاگین.
باسلام و تشکر از شما بیزحمت از این پلاگین در فیلتر استفاده کنید و نیتجه رو ببینید موقع استفاده از این پلاگین در فیلترها موقع باز شدن تقویم تقویم بلینک میزنه در فیلم زیر قابل مشاهده است. https://github.com/ariaieboy/filament-jalali-datetimepicker/assets/53317316/7550056b-3c86-434e-9e49-4d4c27ebacbf