diff options
Diffstat (limited to 'node_modules/algoliasearch/src/places.js')
| -rw-r--r-- | node_modules/algoliasearch/src/places.js | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/node_modules/algoliasearch/src/places.js b/node_modules/algoliasearch/src/places.js new file mode 100644 index 00000000..9e8d5bd2 --- /dev/null +++ b/node_modules/algoliasearch/src/places.js @@ -0,0 +1,37 @@ +module.exports = createPlacesClient; + +var buildSearchMethod = require('./buildSearchMethod.js'); + +function createPlacesClient(algoliasearch) { + return function places(appID, apiKey, opts) { + var cloneDeep = require('./clone.js'); + + opts = opts && cloneDeep(opts) || {}; + opts.hosts = opts.hosts || [ + 'places-dsn.algolia.net', + 'places-1.algolianet.com', + 'places-2.algolianet.com', + 'places-3.algolianet.com' + ]; + + // allow initPlaces() no arguments => community rate limited + if (arguments.length === 0 || typeof appID === 'object' || appID === undefined) { + appID = ''; + apiKey = ''; + opts._allowEmptyCredentials = true; + } + + var client = algoliasearch(appID, apiKey, opts); + var index = client.initIndex('places'); + index.search = buildSearchMethod('query', '/1/places/query'); + index.getObject = function(objectID, callback) { + return this.as._jsonRequest({ + method: 'GET', + url: '/1/places/' + encodeURIComponent(objectID), + hostType: 'read', + callback: callback + }); + }; + return index; + }; +} |
