UNPKG

medusa-plugin-ip-lookup-maxmind-geoip2

Version:
62 lines (61 loc) 3.48 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _geoip2Node = require("@maxmind/geoip2-node"); var _medusa = require("@medusajs/medusa"); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var IpLookupService = /*#__PURE__*/function (_TransactionBaseServi) { (0, _inherits2["default"])(IpLookupService, _TransactionBaseServi); var _super = _createSuper(IpLookupService); function IpLookupService(_ref, options) { var _this; (0, _objectDestructuringEmpty2["default"])(_ref); (0, _classCallCheck2["default"])(this, IpLookupService); _this = _super.call(this, options); _this.options_ = options; return _this; } (0, _createClass2["default"])(IpLookupService, [{ key: "lookupIp", value: function () { var _lookupIp = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(ipAddress) { return _regenerator["default"].wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (this.reader_) { _context.next = 4; break; } _context.next = 3; return _geoip2Node.Reader.open(this.options_["maxmind_db_path"]); case 3: this.reader_ = _context.sent; case 4: return _context.abrupt("return", this.reader_.country(ipAddress)); case 5: case "end": return _context.stop(); } }, _callee, this); })); function lookupIp(_x) { return _lookupIp.apply(this, arguments); } return lookupIp; }() }]); return IpLookupService; }(_medusa.TransactionBaseService); var _default = exports["default"] = IpLookupService;