node-heremaps
Version:
Here maps API wrapper for Node.js
52 lines (33 loc) • 1.53 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = function (target) {
target.prototype.geocode = geocode;
};
var _checkTypes = require('check-types');
var _checkTypes2 = _interopRequireDefault(_checkTypes);
var _make_request = require('./utils/make_request');
var _make_request2 = _interopRequireDefault(_make_request);
var _assign_params = require('./utils/assign_params');
var _assign_params2 = _interopRequireDefault(_assign_params);
var _json_parser = require('./utils/json_parser');
var _json_parser2 = _interopRequireDefault(_json_parser);
var _constants2 = require('./config/constants');
var _constants3 = _interopRequireDefault(_constants2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var ACCEPTED_PARAMS = _constants3.default.ACCEPTED_PARAMS;
var HEREMAPS_ENDPOINTS = _constants3.default.HEREMAPS_ENDPOINTS;
function geocode(params, callback) {
if (typeof callback !== 'function') {
throw new TypeError('callback must be present');
}
if (!_checkTypes2.default.object(params)) {
return callback(new TypeError('params must be an object'));
}
var args = (0, _assign_params2.default)({}, params, ACCEPTED_PARAMS.geocode);
if (!_checkTypes2.default.assigned(args.searchtext)) {
return callback(new Error('params.searchtext is required'));
}
return (0, _make_request2.default)(this.request, this.config, args, HEREMAPS_ENDPOINTS.geocode, (0, _json_parser2.default)(callback));
}