Your IP : 216.73.216.86


Current Path : /var/www/homesaver/www/bitrix/js/location/core/src/entity/location/
Upload File :
Current File : /var/www/homesaver/www/bitrix/js/location/core/src/entity/location/locationjsonconverter.js

import Location from '../location';
import Address from '../address';
import LocationObjectConverter from './locationobjectconverter';

export default class LocationJsonConverter
{
	/**
	 * @param {{...}}jsonData
	 * @returns {Location}
	 */
	static convertJsonToLocation(jsonData)
	{
		const initData = {...jsonData};

		if(jsonData.address)
		{
			initData.address = new Address(jsonData.address);
		}

		return new Location(initData);
	}

	/**
	 * @param {Location} location
	 * @returns {{...}}
	 */
	static convertLocationToJson(location: Location)
	{
		if(!(location instanceof Location))
		{
			throw new TypeError('location must be type of location');
		}

		const obj = LocationObjectConverter.convertLocationToObject(location);
		return obj ? JSON.stringify(obj) : '';
	}
}