import { json } from '@sveltejs/kit';
import type { RequestHandler } from './$types';
import { getKecamatanByKota, hasKodeposData } from '$lib/server/referensi';

export const GET: RequestHandler = async ({ url }) => {
	const provinsi = url.searchParams.get('provinsi')?.trim();
	const kabupaten = url.searchParams.get('kabupaten')?.trim();

	if (!provinsi || !kabupaten) {
		return json(
			{ success: false, message: 'Parameter provinsi dan kabupaten wajib diisi.' },
			{ status: 400 }
		);
	}

	if (!(await hasKodeposData())) {
		return json(
			{ success: false, message: 'Data kodepos belum diimpor. Jalankan: npm run db:kodepos' },
			{ status: 503 }
		);
	}

	try {
		const data = await getKecamatanByKota(provinsi, kabupaten);
		return json({ success: true, data });
	} catch {
		return json({ success: false, message: 'Gagal mengambil data kecamatan.' }, { status: 500 });
	}
};
