es
Version:
API around the ElasticSearch RESTful API -- mostly convenience.
54 lines (39 loc) • 1.51 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
var _forEach = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/for-each"));
var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
var _cluster = require("./cluster");
var _core = require("./core");
var _indices = require("./indices");
var _reqlib = require("reqlib");
// defaults applied to request if
// not supplied on instantiation
var defaults = {
server: {
host: 'localhost',
port: 9200
}
}; // let the magic begin
function createClient() {
var _context;
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
(0, _forEach["default"])(_context = (0, _keys["default"])(defaults)).call(_context, function (key) {
if (!options[key]) {
options[key] = defaults[key];
}
}); // backwards compatibility helper... remaps 'index' to '_index'
if (options.index) {
options._index = options.index;
delete options.index;
}
var client,
request = options.request || new _reqlib.Request(options.server);
client = new _core.Core(options, request);
client.cluster = new _cluster.Cluster(options, request);
client.indices = new _indices.Indices(options, request);
client.request = request;
return client;
} // exports
exports = module.exports = createClient;
exports.createClient = createClient;
//# sourceMappingURL=index.js.map