UNPKG

@maxmind/geoip2-node

Version:

Node.js API for GeoIP2 webservice client and database reader

20 lines (19 loc) 612 B
import * as mmdb from 'maxmind'; import { InvalidDbBufferError } from './errors.js'; import ReaderModel from './readerModel.js'; export default class Reader { static async open(file, opts) { return new ReaderModel(await mmdb.open(file, opts)); } static openBuffer(buffer) { let reader; try { reader = new mmdb.Reader(buffer); } catch (e) { const error = e instanceof Error ? e : new Error(String(e)); throw new InvalidDbBufferError(error.message, { cause: error }); } return new ReaderModel(reader); } }