@maxmind/geoip2-node
Version:
Node.js API for GeoIP2 webservice client and database reader
28 lines (27 loc) • 811 B
JavaScript
import { camelcaseKeys } from '../utils.js';
import City from './City.js';
export default class Insights extends City {
anonymizer;
constructor(response) {
super(response);
const camelcaseResponse = camelcaseKeys(response);
this.anonymizer = this.setBooleanAnonymizer(camelcaseResponse.anonymizer);
}
setBooleanAnonymizer(anonymizer) {
if (!anonymizer) {
return undefined;
}
const booleanTraits = [
'isAnonymous',
'isAnonymousVpn',
'isHostingProvider',
'isPublicProxy',
'isResidentialProxy',
'isTorExitNode',
];
booleanTraits.forEach((trait) => {
anonymizer[trait] = !!anonymizer[trait];
});
return anonymizer;
}
}