// @ts-check
/**
* @import {ExpressRequestAuthorized, ExpressResponse} from '../../types.js'
*/
import * as geoService from './service.js';
import { errorLoggerRead } from '../../utils/requestLogger.js';
/**
* Forward geocode: place name → coordinates
* @param {ExpressRequestAuthorized} req
* @param {ExpressResponse} res
*/
export const geocodePlaceController = async (req, res) => {
try {
const result = await geoService.geocodePlace(req.params.place);
res.json(result);
} catch (error) {
errorLoggerRead(error);
res.json({ success: false, message: error.message });
}
};
/**
* Reverse geocode: coordinates → place name
* @param {ExpressRequestAuthorized} req
* @param {ExpressResponse} res
*/
export const reverseGeocodeController = async (req, res) => {
try {
const result = await geoService.reverseGeocode(req.params.lat, req.params.lng);
res.json(result);
} catch (error) {
errorLoggerRead(error);
res.json({ success: false, message: error.message });
}
};