aboutsummaryrefslogtreecommitdiff
path: root/node_modules/algoliasearch/src/places.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/algoliasearch/src/places.js')
-rw-r--r--node_modules/algoliasearch/src/places.js37
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;
+ };
+}