Add Persian date input and refine admin category/check screens.

Introduce shared PersianDateInput with jalali utilities and align categories and check management views with updated form patterns.
This commit is contained in:
2026-09-15 21:42:01 +03:30
parent a349526385
commit 2de2f697f1
7 changed files with 588 additions and 402 deletions
+2 -10
View File
@@ -4,7 +4,7 @@ import { useRoute, useRouter } from 'vue-router'
import StatusBadge from '@/components/ui/StatusBadge.vue'
import { checksApi, mapAdminOrder, ordersApi, type ApiOrder } from '@/services/api'
import { ApiError } from '@/services/http'
import { formatCurrency, formatDate } from '@/utils/format'
import { formatCurrency, formatDate, formatDateTime as formatPersianDateTime } from '@/utils/format'
import { useToast } from '@/composables/useToast'
import { confirm } from '@/composables/useConfirm'
import { rawStatusLabel } from '@/utils/orderStatus'
@@ -118,15 +118,7 @@ function actorLabel(changedBy?: string) {
}
function formatDateTime(iso?: string) {
if (!iso) return '—'
try {
return new Intl.DateTimeFormat('fa-IR', {
dateStyle: 'medium',
timeStyle: 'short',
}).format(new Date(iso))
} catch {
return iso.slice(0, 16).replace('T', ' ')
}
return formatPersianDateTime(iso)
}
function ownerName(check: Check) {