fix upload image trip
This commit is contained in:
@@ -9,13 +9,21 @@ import {
|
||||
} from "@/lib/trip-dates";
|
||||
import { isValidTimeFormat, timeToMinutes } from "@/lib/itinerary";
|
||||
|
||||
/**
|
||||
* Foto trip sekarang adalah file yang diunggah ke server sendiri, bukan URL
|
||||
* eksternal. Nilai yang valid hanya path terkelola `/api/trip-images/<hex>.webp`
|
||||
* yang dihasilkan route upload — regex ini sengaja ketat supaya URL arbitrary
|
||||
* (yang dulu sering tidak reachable dari server) tidak bisa lolos lagi.
|
||||
*/
|
||||
export const tripImageUrlsSchema = z
|
||||
.array(
|
||||
z
|
||||
.string()
|
||||
.trim()
|
||||
.max(LIMITS.MAX_URL_LENGTH, "URL terlalu panjang")
|
||||
.url("Setiap URL gambar harus valid (http/https)")
|
||||
.regex(
|
||||
/^\/api\/trip-images\/[a-f0-9]{32}\.webp$/,
|
||||
"Foto trip tidak valid — silakan unggah ulang fotonya"
|
||||
)
|
||||
)
|
||||
.max(LIMITS.MAX_IMAGE_URLS, `Maksimal ${LIMITS.MAX_IMAGE_URLS} foto`);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user