@fabrix/spool-cart
Version:
Spool - eCommerce Spool for Fabrix
69 lines (68 loc) • 2.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const spool_generics_1 = require("@fabrix/spool-generics");
class DefaultGeolocationProvider extends spool_generics_1.Generic {
addressToString(address) {
let street = '';
let city = '';
let postalCode = '';
let province = '';
let country = '';
if (address.address_1) {
street = address.address_1;
}
if (address.address_2) {
street = `${street} ${address.address_2}`;
}
if (address.address_3) {
street = `${street} ${address.address_3}`;
}
if (address.company) {
street = `${street} ${address.company}`;
}
if (street !== '') {
street = `${street}, `;
}
if (address.city) {
city = address.city;
}
if (city !== '') {
city = `${city} `;
}
if (address.postal_code) {
postalCode = address.postal_code;
}
if (postalCode !== '') {
postalCode = `${postalCode} `;
}
if (address.province_code || address.province) {
if (address.province_code) {
province = `${address.province_code}`;
}
else {
province = `${address.province}`;
}
}
if (address.country_code || address.country) {
if (address.country_code) {
country = `${address.country_code}`;
}
else {
country = `${address.country}`;
}
}
if (province !== '' && country !== '') {
province = `${province}, `;
country = `${country}`;
}
return `${street}${city}${province}${postalCode}${country}`;
}
locate(address) {
return Promise.resolve({
formatted_address: this.addressToString(address),
latitude: 0.000000,
longitude: 0.000000
});
}
}
exports.DefaultGeolocationProvider = DefaultGeolocationProvider;