Skip to content

Instantly share code, notes, and snippets.

@Fronix
Last active July 7, 2024 13:23
Show Gist options
  • Save Fronix/14c595324c0c3a5b0fa1509a13cf9c23 to your computer and use it in GitHub Desktop.
Save Fronix/14c595324c0c3a5b0fa1509a13cf9c23 to your computer and use it in GitHub Desktop.
Add handleResults to InstantMeilisearch patch
This file has been truncated, but you can view the full file.
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.cjs.js b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.cjs.js
index 0727dba..1f822cf 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.cjs.js
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.cjs.js
@@ -90,11 +90,6 @@ function __spreadArray(to, from, pack) {
return to.concat(ar || Array.prototype.slice.call(from));
}
-typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
- var e = new Error(message);
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
-};
-
function isPureObject(data) {
return typeof data === 'object' && !Array.isArray(data) && data !== null;
}
@@ -158,7 +153,7 @@ function validateInstantMeiliSearchParams(hostUrl, apiKey, instantMeiliSearchOpt
/**
* @param {ResponseCacher} cache
*/
-function SearchResolver(client, cache) {
+function SearchResolver(client, cache, handleResults) {
return {
multiSearch: function (searchQueries, instantSearchPagination) {
return __awaiter(this, void 0, void 0, function () {
@@ -169,8 +164,12 @@ function SearchResolver(client, cache) {
key = cache.formatKey([searchQueries]);
cachedResponse = cache.getEntry(key);
// Check if specific request is already cached with its associated search response.
- if (cachedResponse)
+ if (cachedResponse) {
+ if (handleResults) {
+ return [2 /*return*/, handleResults(cachedResponse, searchQueries)];
+ }
return [2 /*return*/, cachedResponse];
+ }
return [4 /*yield*/, client.multiSearch({
queries: searchQueries
})];
@@ -181,6 +180,9 @@ function SearchResolver(client, cache) {
pagination: instantSearchPagination[index] || {} })); });
// Cache response
cache.setEntry(key, responseWithPagination);
+ if (handleResults) {
+ return [2 /*return*/, handleResults(responseWithPagination, searchQueries)];
+ }
return [2 /*return*/, responseWithPagination];
}
});
@@ -224,42 +226,60 @@ function adaptGeoSearch(_a) {
return filter;
}
+function removeDuplicate(key) {
+ var indexes = [];
+ return function (object) {
+ if (indexes.includes(object[key])) {
+ return false;
+ }
+ indexes.push(object[key]);
+ return true;
+ };
+}
+
/**
- * Transform InstantSearch filter to Meilisearch compatible filter format.
- * Change sign from `:` to `=`
- * "facet:facetValue" becomes "facet=facetValue"
- *
- * Wrap both the facet and its facet value between quotes.
- * This avoid formating issues on facets containing multiple words.
- *
- * 'My facet:My facet value' becomes '"My facet":"My facet value"'
- *
- * @param {string} filter?
- * @returns {Filter}
+ * @param {any} str
+ * @returns {boolean}
+ */
+/**
+ * @param {string} filter
+ * @returns {string}
+ */
+function replaceColonByEqualSign(filter) {
+ // will only change first occurence of `:`
+ return filter.replace(/:(.*)/i, '="$1"');
+}
+/**
+ * @param {any[]} arr
+ * @returns {string}
*/
-function transformFilter(filter) {
- return filter.replace(/(.*):(.*)/i, '"$1"="$2"');
+function stringifyArray(arr) {
+ return arr.reduce(function (acc, curr) {
+ return (acc += JSON.stringify(curr));
+ }, '');
}
+
/**
- * Itterate over all filters.
- * Return the filters in a Meilisearch compatible format.
+ * Transform InstantSearch filter to Meilisearch filter.
+ * Change sign from `:` to `=` in nested filter object.
+ * example: [`genres:comedy`] becomes [`genres=comedy`]
*
* @param {SearchContext['facetFilters']} filters?
* @returns {Filter}
*/
-function transformFilters(filters) {
+function transformFilter(filters) {
if (typeof filters === 'string') {
- return transformFilter(filters);
+ return replaceColonByEqualSign(filters);
}
else if (Array.isArray(filters))
return filters
.map(function (filter) {
if (Array.isArray(filter))
return filter
- .map(function (nestedFilter) { return transformFilter(nestedFilter); })
+ .map(function (nestedFilter) { return replaceColonByEqualSign(nestedFilter); })
.filter(function (elem) { return elem; });
else {
- return transformFilter(filter);
+ return replaceColonByEqualSign(filter);
}
})
.filter(function (elem) { return elem; });
@@ -314,8 +334,8 @@ function mergeFilters(facetFilters, numericFilters, filters) {
* @returns {Filter}
*/
function adaptFilters(filters, numericFilters, facetFilters) {
- var transformedFilter = transformFilters(facetFilters || []);
- var transformedNumericFilter = transformFilters(numericFilters || []);
+ var transformedFilter = transformFilter(facetFilters || []);
+ var transformedNumericFilter = transformFilter(numericFilters || []);
return mergeFilters(transformedFilter, transformedNumericFilter, filters || '');
}
@@ -493,31 +513,6 @@ function adaptSearchParams(searchContext) {
return meilisearchParams.getParams();
}
-function removeDuplicate(key) {
- var indexes = [];
- return function (object) {
- if (indexes.includes(object[key])) {
- return false;
- }
- indexes.push(object[key]);
- return true;
- };
-}
-
-/**
- * @param {any} str
- * @returns {boolean}
- */
-/**
- * @param {any[]} arr
- * @returns {string}
- */
-function stringifyArray(arr) {
- return arr.reduce(function (acc, curr) {
- return (acc += JSON.stringify(curr));
- }, '');
-}
-
/**
* Stringify values following instantsearch practices.
*
@@ -772,29 +767,6 @@ function adaptSearchResult(meiliSearchResult, initialFacetDistribution, config)
return adaptedSearchResult;
}
-/**
- * Split sort string into an array.
- *
- * Example:
- * '_geoPoint(37.8153, -122.4784):asc,title:asc,description:desc'
- *
- * becomes:
- * [
- * '_geoPoint(37.8153, -122.4784):asc',
- * 'title:asc',
- * 'description:desc',
- * ]
- *
- * @param {string} sortStr
- * @returns {string[]}
- */
-function splitSortString(sortStr) {
- if (!sortStr)
- return [];
- var sortRules = sortStr.split(/,(?=\w+:(?:asc|desc))/);
- return sortRules;
-}
-
/**
* Create the current state of the pagination
*
@@ -811,43 +783,29 @@ function createPaginationState(finite, hitsPerPage, page) {
};
}
-function separateIndexFromSortRules(indexName) {
- var colonIndex = indexName.indexOf(':');
- if (colonIndex === -1) {
- return {
- indexUid: indexName,
- sortBy: ''
- };
- }
- return {
- indexUid: indexName.substring(0, colonIndex),
- sortBy: indexName.substring(colonIndex + 1)
- };
-}
/**
- * @param {AlgoliaMultipleQueriesQuery} searchRequest
- * @param {Context} options
- * @returns {SearchContext}
+ * @param {string} rawSort
+ * @returns {string[]}
*/
-function createSearchContext(searchRequest, options) {
- var query = searchRequest.query, indexName = searchRequest.indexName, instantSearchParams = searchRequest.params;
- // Split index name and possible sorting rules
- var _a = separateIndexFromSortRules(indexName), indexUid = _a.indexUid, sortBy = _a.sortBy;
- var paginationState = createPaginationState(options.finitePagination, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.hitsPerPage, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.page);
- var searchContext = __assign(__assign(__assign(__assign({}, options), { query: query }), instantSearchParams), { sort: splitSortString(sortBy), indexUid: indexUid, pagination: paginationState, placeholderSearch: options.placeholderSearch !== false, keepZeroFacets: !!options.keepZeroFacets });
- return searchContext;
+function createSortState(rawSort) {
+ return rawSort
+ .split(',')
+ .map(function (sort) { return sort.trim(); })
+ .filter(function (sort) { return !!sort; });
}
+
/**
* @param {AlgoliaMultipleQueriesQuery} searchRequest
* @param {Context} options
* @returns {SearchContext}
*/
-function createFacetSearchContext(searchRequest, options) {
+function createSearchContext(searchRequest, options) {
// Split index name and possible sorting rules
- var _a = separateIndexFromSortRules(searchRequest.indexName), indexUid = _a.indexUid, sortBy = _a.sortBy;
+ var _a = searchRequest.indexName.split(':'), indexUid = _a[0], sortByArray = _a.slice(1);
var instantSearchParams = searchRequest.params;
var paginationState = createPaginationState(options.finitePagination, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.hitsPerPage, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.page);
- var searchContext = __assign(__assign(__assign({}, options), instantSearchParams), { sort: splitSortString(sortBy), indexUid: indexUid, pagination: paginationState, placeholderSearch: options.placeholderSearch !== false, keepZeroFacets: !!options.keepZeroFacets });
+ var sortState = createSortState(sortByArray.join(':'));
+ var searchContext = __assign(__assign(__assign({}, options), instantSearchParams), { sort: sortState, indexUid: indexUid, pagination: paginationState, placeholderSearch: options.placeholderSearch !== false, keepZeroFacets: !!options.keepZeroFacets });
return searchContext;
}
@@ -926,15 +884,8 @@ function initFacetDistribution(searchResolver, queries, initialFacetDistribution
});
});
}
-function fillMissingFacets(initialFacetDistribution, meilisearchResults) {
- for (var _i = 0, meilisearchResults_1 = meilisearchResults; _i < meilisearchResults_1.length; _i++) {
- var searchResult = meilisearchResults_1[_i];
- initialFacetDistribution[searchResult.indexUid] = __assign(__assign({}, (searchResult.facetDistribution || {})), (initialFacetDistribution[searchResult.indexUid] || {}));
- }
- return initialFacetDistribution;
-}
-var PACKAGE_VERSION = '0.13.6';
+var PACKAGE_VERSION = '0.13.0';
var constructClientAgents = function (clientAgents) {
if (clientAgents === void 0) { clientAgents = []; }
@@ -971,7 +922,7 @@ function instantMeiliSearch(hostUrl, apiKey, instantMeiliSearchOptions) {
var meilisearchClient = new meilisearch.MeiliSearch(meilisearchConfig);
var searchCache = SearchCache();
// create search resolver with included cache
- var searchResolver = SearchResolver(meilisearchClient, searchCache);
+ var searchResolver = SearchResolver(meilisearchClient, searchCache, instantMeiliSearchOptions.handleResults);
var initialFacetDistribution = {};
var instantMeilisearchConfig = getInstantMeilisearchConfig(instantMeiliSearchOptions);
return {
@@ -1007,13 +958,9 @@ function instantMeiliSearch(hostUrl, apiKey, instantMeiliSearchOptions) {
case 1:
initialFacetDistribution = _a.sent();
return [4 /*yield*/, searchResolver.multiSearch(meilisearchRequests, instantSearchPagination // Create issue on pagination
- )
- // Fill the missing facet values if keepZeroFacets is true
- ];
+ )];
case 2:
meilisearchResults = _a.sent();
- // Fill the missing facet values if keepZeroFacets is true
- initialFacetDistribution = fillMissingFacets(initialFacetDistribution, meilisearchResults);
instantSearchResponse = adaptSearchResults(meilisearchResults, initialFacetDistribution, instantMeilisearchConfig);
return [2 /*return*/, instantSearchResponse];
case 3:
@@ -1025,41 +972,15 @@ function instantMeiliSearch(hostUrl, apiKey, instantMeiliSearchOptions) {
});
});
},
- searchForFacetValues: function (requests) {
+ searchForFacetValues: function (_) {
return __awaiter(this, void 0, void 0, function () {
- var results, _i, requests_1, request, searchContext, meilisearchSearchQuery, meilisearchRequest, meilisearchResponse, facetHits, result;
return __generator(this, function (_a) {
switch (_a.label) {
- case 0:
- results = [];
- _i = 0, requests_1 = requests;
- _a.label = 1;
- case 1:
- if (!(_i < requests_1.length)) return [3 /*break*/, 4];
- request = requests_1[_i];
- searchContext = createFacetSearchContext(request, instantMeiliSearchOptions);
- meilisearchSearchQuery = adaptSearchParams(searchContext);
- meilisearchRequest = __assign(__assign({}, meilisearchSearchQuery), { facetQuery: request.params.facetQuery, facetName: request.params.facetName });
- delete meilisearchRequest.indexUid;
- return [4 /*yield*/, meilisearchClient
- .index(searchContext.indexUid)
- .searchForFacetValues(meilisearchRequest)];
- case 2:
- meilisearchResponse = _a.sent();
- facetHits = meilisearchResponse.facetHits.map(function (facetHit) { return (__assign(__assign({}, facetHit), {
- // not currently supported
- highlighted: facetHit.value })); });
- result = {
- facetHits: facetHits,
- exhaustiveFacetsCount: false,
- processingTimeMS: meilisearchResponse.processingTimeMs
- };
- results.push(result);
- _a.label = 3;
- case 3:
- _i++;
- return [3 /*break*/, 1];
- case 4: return [2 /*return*/, results];
+ case 0: return [4 /*yield*/, new Promise(function (resolve, reject) {
+ reject(new Error('SearchForFacetValues is not compatible with Meilisearch'));
+ resolve([]); // added here to avoid compilation error
+ })];
+ case 1: return [2 /*return*/, _a.sent()];
}
});
});
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.cjs.min.js b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.cjs.min.js
index 0b9628c..692dca7 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.cjs.min.js
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.cjs.min.js
@@ -1,2 +1,2 @@
-"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("meilisearch"),e=function(){return e=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},e.apply(this,arguments)};function r(t,e,r,n){return new(r||(r=Promise))((function(i,a){function o(t){try{s(n.next(t))}catch(t){a(t)}}function u(t){try{s(n.throw(t))}catch(t){a(t)}}function s(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,u)}s((n=n.apply(t,e||[])).next())}))}function n(t,e){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(u){return function(s){return function(u){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,u[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&u[0]?n.return:u[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,u[1])).done)return i;switch(n=0,i&&(u=[2&u[0],i.value]),u[0]){case 0:case 1:i=u;break;case 4:return o.label++,{value:u[1],done:!1};case 5:o.label++,n=u[1],u=[0];continue;case 7:u=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==u[0]&&2!==u[0])){o=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]<i[3])){o.label=u[1];break}if(6===u[0]&&o.label<i[1]){o.label=i[1],i=u;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(u);break}i[2]&&o.ops.pop(),o.trys.pop();continue}u=e.call(t,o)}catch(t){u=[6,t],n=0}finally{r=i=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,s])}}}function i(t,e,r){if(r||2===arguments.length)for(var n,i=0,a=e.length;i<a;i++)!n&&i in e||(n||(n=Array.prototype.slice.call(e,0,i)),n[i]=e[i]);return t.concat(n||Array.prototype.slice.call(e))}function a(t){return"object"==typeof t&&!Array.isArray(t)&&null!==t}function o(t){return t.replace(/(.*):(.*)/i,'"$1"="$2"')}function u(t){return"string"==typeof t?o(t):Array.isArray(t)?t.map((function(t){return Array.isArray(t)?t.map((function(t){return o(t)})).filter((function(t){return t})):o(t)})).filter((function(t){return t})):[]}function s(t){return""===t?[]:"string"==typeof t?[t]:t}function c(t,e,r){return function(t,e,r){var n=r.trim(),a=s(t),o=s(e);return i(i(i([],a,!0),o,!0),[n],!1).filter((function(t){return Array.isArray(t)?t.length:t}))}(u(r||[]),u(e||[]),t||"")}function l(t){var e={},r=t.facets,n=t.attributesToSnippet,i=t.snippetEllipsisText,a=t.attributesToRetrieve,o=t.attributesToHighlight,u=t.highlightPreTag,s=t.highlightPostTag,l=t.placeholderSearch,f=t.query,d=t.sort,g=t.pagination,h=t.matchingStrategy,p=t.filters,v=t.numericFilters,y=t.facetFilters,m=t.indexUid,b=c(p,v,y);return{getParams:function(){return e},addQuery:function(){e.q=f},addIndexUid:function(){e.indexUid=m},addFacets:function(){Array.isArray(r)?e.facets=r:"string"==typeof r&&(e.facets=[r])},addAttributesToCrop:function(){n&&(e.attributesToCrop=n)},addCropMarker:function(){null!=i&&(e.cropMarker=i)},addAttributesToRetrieve:function(){a&&(e.attributesToRetrieve=a)},addFilters:function(){b.length&&(e.filter=b)},addAttributesToHighlight:function(){e.attributesToHighlight=o||["*"]},addPreTag:function(){e.highlightPreTag=u||"__ais-highlight__"},addPostTag:function(){e.highlightPostTag=s||"__/ais-highlight__"},addPagination:function(){var t=function(t,e,r){return!!(r||e||t&&0!==t.length)}(b,f,l);if(g.finite){var r=function(t,e){var r=t.page,n=t.hitsPerPage;return e?{hitsPerPage:n,page:r+1}:{hitsPerPage:0,page:r+1}}(g,t),n=r.hitsPerPage,i=r.page;e.hitsPerPage=n,e.page=i}else{var a=function(t,e){var r=t.page,n=t.hitsPerPage;return e?{limit:n+1,offset:r*n}:{limit:0,offset:0}}(g,t),o=a.limit,u=a.offset;e.limit=o,e.offset=u}},addSort:function(){(null==d?void 0:d.length)&&(e.sort=Array.isArray(d)?d:[d])},addGeoSearchFilter:function(){var r=function(t){var e,r,n,i=t.insideBoundingBox,a=t.aroundLatLng,o=t.aroundRadius,u=t.minimumAroundRadius;if(a){var s=a.split(",").map((function(t){return Number.parseFloat(t).toFixed(5)}));e=[h=s[0],p=s[1]]}if(null==o&&null==u||("all"===o?console.warn("instant-meilisearch is not compatible with the `all` value on the aroundRadius parameter"):r=null!=o?o:u),i&&"string"==typeof i){var c=i.split(",").map((function(t){return parseFloat(t)})),l=c[0],f=c[1],d=c[2],g=c[3];n="_geoBoundingBox([".concat(l,", ").concat(f,"], [").concat(d,", ").concat(g,"])")}else if(null!=e&&null!=r){var h=e[0],p=e[1];n="_geoRadius(".concat(h,", ").concat(p,", ").concat(r,")")}return n}({insideBoundingBox:t.insideBoundingBox,aroundLatLng:t.aroundLatLng,aroundRadius:t.aroundRadius,minimumAroundRadius:t.minimumAroundRadius});r&&(e.filter?e.filter.unshift(r):e.filter=[r])},addMatchingStrategy:function(){h&&(e.matchingStrategy=h)}}}function f(t){var e=l(t);return e.addQuery(),e.addIndexUid(),e.addFacets(),e.addAttributesToHighlight(),e.addPreTag(),e.addPostTag(),e.addAttributesToRetrieve(),e.addAttributesToCrop(),e.addCropMarker(),e.addPagination(),e.addFilters(),e.addSort(),e.addGeoSearchFilter(),e.addMatchingStrategy(),e.getParams()}function d(t){return"string"==typeof t?t:void 0===t?JSON.stringify(null):JSON.stringify(t)}function g(t){return Array.isArray(t)?t.map((function(t){return g(t)})):a(t)?Object.keys(t).reduce((function(e,r){return e[r]=g(t[r]),e}),{}):{value:d(t)}}function h(t){if(!t)return{};var e=g(t);return{_highlightResult:e,_snippetResult:e}}function p(t,e){var r=t.hits,n=t.pagination.hitsPerPage,i=e.finitePagination,a=e.primaryKey;!i&&r.length>n&&r.splice(r.length-1,1);var o=r.map((function(t){if(Object.keys(t).length>0){var e=t._formatted;t._matchesPosition;var r=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]])}return r}(t,["_formatted","_matchesPosition"]),n=Object.assign(r,h(e));return a&&(n.objectID=t[a]),n}return t}));return o=function(t){for(var e,r=0;r<t.length;r++){var n="".concat(r+1e6*Math.random());t[r]._geo&&(t[r]._geoloc=t[r]._geo,t[r].objectID=n),(null===(e=t[r]._formatted)||void 0===e?void 0:e._geo)&&(t[r]._formatted._geoloc=t[r]._formatted._geo,t[r]._formatted.objectID=n)}return t}(o),o}function v(t){return Object.keys(t).reduce((function(r,n){return r[n]=e(e({},t[n]),{avg:0,sum:0}),r}),{})}function y(t,e,r){var n=t.map((function(t){return function(t,e,r){var n=t.processingTimeMs,i=t.query,a=t.indexUid,o=t.facetDistribution,u=void 0===o?{}:o,s=t.facetStats,c=void 0===s?{}:s,l=Object.keys(u),f=function(t,e){var r=e.hitsPerPage,n=e.page,i=function(t,e){if(null!=t.totalPages)return t.totalPages;if(0===e)return 0;var r=t.limit,n=void 0===r?20:r,i=t.offset;return(void 0===i?0:i)/e+1+(t.hits.length>=n?1:0)}(t,r);return{page:n,nbPages:i,hitsPerPage:r}}(t,t.pagination),d=f.hitsPerPage,g=f.page,h=f.nbPages,y=p(t,r),m=function(t){var e=t.hitsPerPage,r=void 0===e?0:e,n=t.totalPages,i=void 0===n?0:n,a=t.estimatedTotalHits,o=t.totalHits;return null!=a?a:null!=o?o:r*i}(t),b=function(t,e,r,n){return t?function(t,e,r){for(var n=function(t){return t?"string"==typeof t?[t]:t:[]}(t),i={},a=0,o=n;a<o.length;a++){var u=o[a];for(var s in e[u])i[u]||(i[u]=r[u]||{}),i[u][s]?i[u][s]=r[u][s]:i[u][s]=0}return i}(e,r,n=n||{}):n}(r.keepZeroFacets,l,e,u);return{index:a,hitsPerPage:d,page:g,facets:b,nbPages:h,nbHits:m,processingTimeMS:n,query:i,hits:y,params:"",exhaustiveNbHits:!1,facets_stats:v(c)}}(t,e[t.indexUid],r)}));return{results:n}}function m(t){return t?t.split(/,(?=\w+:(?:asc|desc))/):[]}function b(t,e,r){return{hitsPerPage:void 0===e?20:e,page:r||0,finite:!!t}}function P(t){var e=t.indexOf(":");return-1===e?{indexUid:t,sortBy:""}:{indexUid:t.substring(0,e),sortBy:t.substring(e+1)}}function x(t,r){var n=t.query,i=t.indexName,a=t.params,o=P(i),u=o.indexUid,s=o.sortBy,c=b(r.finitePagination,null==a?void 0:a.hitsPerPage,null==a?void 0:a.page);return e(e(e(e({},r),{query:n}),a),{sort:m(s),indexUid:u,pagination:c,placeholderSearch:!1!==r.placeholderSearch,keepZeroFacets:!!r.keepZeroFacets})}function S(t){void 0===t&&(t={});var e=t;return{getEntry:function(t){if(e[t])try{return JSON.parse(e[t])}catch(t){return}},formatKey:function(t){return t.reduce((function(t,e){return t+JSON.stringify(e)}),"")},setEntry:function(t,r){e[t]=JSON.stringify(r)},clearCache:function(){e={}}}}function w(t){var r=l(e(e({},t),{placeholderSearch:!0,query:""}));return r.addFacets(),r.addIndexUid(),r.addPagination(),r.getParams()}function T(t,e,i){return r(this,void 0,void 0,(function(){var r,a,o,u,s,c;return n(this,(function(n){switch(n.label){case 0:return l="indexUid",f=[],r=function(t){return!f.includes(t[l])&&(f.push(t[l]),!0)},a=e.filter(r).filter((function(t){var e=t.indexUid;return!Object.keys(i).includes(e)})),0===a.length?[2,i]:[4,t.multiSearch(a,[])];case 1:for(o=n.sent(),u=0,s=o;u<s.length;u++)c=s[u],i[c.indexUid]=c.facetDistribution||{};return[2,i]}var l,f}))}))}"function"==typeof SuppressedError&&SuppressedError;var A;exports.MatchingStrategies=void 0,(A=exports.MatchingStrategies||(exports.MatchingStrategies={})).ALL="all",A.LAST="last",exports.instantMeiliSearch=function(i,o,u){void 0===o&&(o=""),void 0===u&&(u={}),function(t,e,r){var n=r.requestConfig,i=r.httpClient;if("string"!=typeof t)throw new TypeError("Provided hostUrl value (1st parameter) is not a string, expected string");if("string"!=typeof e&&"function"!=typeof e)throw new TypeError("Provided apiKey value (2nd parameter) is not a string or a function, expected string or function");if(void 0!==n&&!a(n))throw new TypeError("Provided requestConfig should be an object");if(i&&"function"!=typeof i)throw new TypeError("Provided custom httpClient should be a function")}(i,o,u);var s={host:i,apiKey:o=function(t){if("function"==typeof t){var e=t();if("string"!=typeof e)throw new TypeError("Provided apiKey function (2nd parameter) did not return a string, expected string");return e}return t}(o),clientAgents:function(t){void 0===t&&(t=[]);var e="Meilisearch instant-meilisearch (v".concat("0.13.6",")");return t.concat(e)}(u.clientAgents)};void 0!==u.httpClient&&(s.httpClient=u.httpClient),void 0!==u.requestConfig&&(s.requestConfig=u.requestConfig);var c,l,d,g=new t.MeiliSearch(s),h=S(),p=(c=g,l=h,{multiSearch:function(t,i){return r(this,void 0,void 0,(function(){var r,a,o,u;return n(this,(function(n){switch(n.label){case 0:return r=l.formatKey([t]),(a=l.getEntry(r))?[2,a]:[4,c.multiSearch({queries:t})];case 1:return o=n.sent(),u=o.results.map((function(t,r){return e(e({},t),{pagination:i[r]||{}})})),l.setEntry(r,u),[2,u]}}))}))}}),v={},A=(d=u,e(e({},{placeholderSearch:!0,keepZeroFacets:!1,clientAgents:[],finitePagination:!1}),d));return{clearCache:function(){return h.clearCache()},search:function(t){return r(this,void 0,void 0,(function(){var r,i,a,o,s,c,l,d,g,h,m;return n(this,(function(n){switch(n.label){case 0:for(n.trys.push([0,3,,4]),r=[],i=[],a=[],o=0,s=t;o<s.length;o++)c=s[o],l=x(c,u),d=f(l),r.push(d),g=w(l),a.push(g),i.push(l.pagination);return[4,T(p,a,v)];case 1:return v=n.sent(),[4,p.multiSearch(r,i)];case 2:return h=n.sent(),v=function(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];t[a.indexUid]=e(e({},a.facetDistribution||{}),t[a.indexUid]||{})}return t}(v,h),[2,y(h,v,A)];case 3:throw m=n.sent(),console.error(m),new Error(m);case 4:return[2]}}))}))},searchForFacetValues:function(t){return r(this,void 0,void 0,(function(){var r,i,a,o,s,c,l,d,h,p;return n(this,(function(n){switch(n.label){case 0:r=[],i=0,a=t,n.label=1;case 1:return i<a.length?(o=a[i],s=function(t,r){var n=P(t.indexName),i=n.indexUid,a=n.sortBy,o=t.params,u=b(r.finitePagination,null==o?void 0:o.hitsPerPage,null==o?void 0:o.page);return e(e(e({},r),o),{sort:m(a),indexUid:i,pagination:u,placeholderSearch:!1!==r.placeholderSearch,keepZeroFacets:!!r.keepZeroFacets})}(o,u),c=f(s),delete(l=e(e({},c),{facetQuery:o.params.facetQuery,facetName:o.params.facetName})).indexUid,[4,g.index(s.indexUid).searchForFacetValues(l)]):[3,4];case 2:d=n.sent(),h=d.facetHits.map((function(t){return e(e({},t),{highlighted:t.value})})),p={facetHits:h,exhaustiveFacetsCount:!1,processingTimeMS:d.processingTimeMs},r.push(p),n.label=3;case 3:return i++,[3,1];case 4:return[2,r]}}))}))}}};
+"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("meilisearch"),e=function(){return e=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},e.apply(this,arguments)};function r(t,e,r,n){return new(r||(r=Promise))((function(i,a){function o(t){try{c(n.next(t))}catch(t){a(t)}}function u(t){try{c(n.throw(t))}catch(t){a(t)}}function c(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,u)}c((n=n.apply(t,e||[])).next())}))}function n(t,e){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(u){return function(c){return function(u){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,u[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&u[0]?n.return:u[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,u[1])).done)return i;switch(n=0,i&&(u=[2&u[0],i.value]),u[0]){case 0:case 1:i=u;break;case 4:return o.label++,{value:u[1],done:!1};case 5:o.label++,n=u[1],u=[0];continue;case 7:u=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==u[0]&&2!==u[0])){o=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]<i[3])){o.label=u[1];break}if(6===u[0]&&o.label<i[1]){o.label=i[1],i=u;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(u);break}i[2]&&o.ops.pop(),o.trys.pop();continue}u=e.call(t,o)}catch(t){u=[6,t],n=0}finally{r=i=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,c])}}}function i(t,e,r){if(r||2===arguments.length)for(var n,i=0,a=e.length;i<a;i++)!n&&i in e||(n||(n=Array.prototype.slice.call(e,0,i)),n[i]=e[i]);return t.concat(n||Array.prototype.slice.call(e))}function a(t){return"object"==typeof t&&!Array.isArray(t)&&null!==t}function o(t){return t.replace(/:(.*)/i,'="$1"')}function u(t){return"string"==typeof t?o(t):Array.isArray(t)?t.map((function(t){return Array.isArray(t)?t.map((function(t){return o(t)})).filter((function(t){return t})):o(t)})).filter((function(t){return t})):[]}function c(t){return""===t?[]:"string"==typeof t?[t]:t}function s(t,e,r){return function(t,e,r){var n=r.trim(),a=c(t),o=c(e);return i(i(i([],a,!0),o,!0),[n],!1).filter((function(t){return Array.isArray(t)?t.length:t}))}(u(r||[]),u(e||[]),t||"")}function l(t){var e={},r=t.facets,n=t.attributesToSnippet,i=t.snippetEllipsisText,a=t.attributesToRetrieve,o=t.attributesToHighlight,u=t.highlightPreTag,c=t.highlightPostTag,l=t.placeholderSearch,f=t.query,d=t.sort,g=t.pagination,h=t.matchingStrategy,p=t.filters,v=t.numericFilters,y=t.facetFilters,m=t.indexUid,P=s(p,v,y);return{getParams:function(){return e},addQuery:function(){e.q=f},addIndexUid:function(){e.indexUid=m},addFacets:function(){Array.isArray(r)?e.facets=r:"string"==typeof r&&(e.facets=[r])},addAttributesToCrop:function(){n&&(e.attributesToCrop=n)},addCropMarker:function(){null!=i&&(e.cropMarker=i)},addAttributesToRetrieve:function(){a&&(e.attributesToRetrieve=a)},addFilters:function(){P.length&&(e.filter=P)},addAttributesToHighlight:function(){e.attributesToHighlight=o||["*"]},addPreTag:function(){e.highlightPreTag=u||"__ais-highlight__"},addPostTag:function(){e.highlightPostTag=c||"__/ais-highlight__"},addPagination:function(){var t=function(t,e,r){return!!(r||e||t&&0!==t.length)}(P,f,l);if(g.finite){var r=function(t,e){var r=t.page,n=t.hitsPerPage;return e?{hitsPerPage:n,page:r+1}:{hitsPerPage:0,page:r+1}}(g,t),n=r.hitsPerPage,i=r.page;e.hitsPerPage=n,e.page=i}else{var a=function(t,e){var r=t.page,n=t.hitsPerPage;return e?{limit:n+1,offset:r*n}:{limit:0,offset:0}}(g,t),o=a.limit,u=a.offset;e.limit=o,e.offset=u}},addSort:function(){(null==d?void 0:d.length)&&(e.sort=Array.isArray(d)?d:[d])},addGeoSearchFilter:function(){var r=function(t){var e,r,n,i=t.insideBoundingBox,a=t.aroundLatLng,o=t.aroundRadius,u=t.minimumAroundRadius;if(a){var c=a.split(",").map((function(t){return Number.parseFloat(t).toFixed(5)}));e=[h=c[0],p=c[1]]}if(null==o&&null==u||("all"===o?console.warn("instant-meilisearch is not compatible with the `all` value on the aroundRadius parameter"):r=null!=o?o:u),i&&"string"==typeof i){var s=i.split(",").map((function(t){return parseFloat(t)})),l=s[0],f=s[1],d=s[2],g=s[3];n="_geoBoundingBox([".concat(l,", ").concat(f,"], [").concat(d,", ").concat(g,"])")}else if(null!=e&&null!=r){var h=e[0],p=e[1];n="_geoRadius(".concat(h,", ").concat(p,", ").concat(r,")")}return n}({insideBoundingBox:t.insideBoundingBox,aroundLatLng:t.aroundLatLng,aroundRadius:t.aroundRadius,minimumAroundRadius:t.minimumAroundRadius});r&&(e.filter?e.filter.unshift(r):e.filter=[r])},addMatchingStrategy:function(){h&&(e.matchingStrategy=h)}}}function f(t){var e=l(t);return e.addQuery(),e.addIndexUid(),e.addFacets(),e.addAttributesToHighlight(),e.addPreTag(),e.addPostTag(),e.addAttributesToRetrieve(),e.addAttributesToCrop(),e.addCropMarker(),e.addPagination(),e.addFilters(),e.addSort(),e.addGeoSearchFilter(),e.addMatchingStrategy(),e.getParams()}function d(t){return"string"==typeof t?t:void 0===t?JSON.stringify(null):JSON.stringify(t)}function g(t){return Array.isArray(t)?t.map((function(t){return g(t)})):a(t)?Object.keys(t).reduce((function(e,r){return e[r]=g(t[r]),e}),{}):{value:d(t)}}function h(t){if(!t)return{};var e=g(t);return{_highlightResult:e,_snippetResult:e}}function p(t,e){var r=t.hits,n=t.pagination.hitsPerPage,i=e.finitePagination,a=e.primaryKey;!i&&r.length>n&&r.splice(r.length-1,1);var o=r.map((function(t){if(Object.keys(t).length>0){var e=t._formatted;t._matchesPosition;var r=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]])}return r}(t,["_formatted","_matchesPosition"]),n=Object.assign(r,h(e));return a&&(n.objectID=t[a]),n}return t}));return o=function(t){for(var e,r=0;r<t.length;r++){var n="".concat(r+1e6*Math.random());t[r]._geo&&(t[r]._geoloc=t[r]._geo,t[r].objectID=n),(null===(e=t[r]._formatted)||void 0===e?void 0:e._geo)&&(t[r]._formatted._geoloc=t[r]._formatted._geo,t[r]._formatted.objectID=n)}return t}(o),o}function v(t){return Object.keys(t).reduce((function(r,n){return r[n]=e(e({},t[n]),{avg:0,sum:0}),r}),{})}function y(t,e,r){var n=t.map((function(t){return function(t,e,r){var n=t.processingTimeMs,i=t.query,a=t.indexUid,o=t.facetDistribution,u=void 0===o?{}:o,c=t.facetStats,s=void 0===c?{}:c,l=Object.keys(u),f=function(t,e){var r=e.hitsPerPage,n=e.page,i=function(t,e){if(null!=t.totalPages)return t.totalPages;if(0===e)return 0;var r=t.limit,n=void 0===r?20:r,i=t.offset;return(void 0===i?0:i)/e+1+(t.hits.length>=n?1:0)}(t,r);return{page:n,nbPages:i,hitsPerPage:r}}(t,t.pagination),d=f.hitsPerPage,g=f.page,h=f.nbPages,y=p(t,r),m=function(t){var e=t.hitsPerPage,r=void 0===e?0:e,n=t.totalPages,i=void 0===n?0:n,a=t.estimatedTotalHits,o=t.totalHits;return null!=a?a:null!=o?o:r*i}(t),P=function(t,e,r,n){return t?function(t,e,r){for(var n=function(t){return t?"string"==typeof t?[t]:t:[]}(t),i={},a=0,o=n;a<o.length;a++){var u=o[a];for(var c in e[u])i[u]||(i[u]=r[u]||{}),i[u][c]?i[u][c]=r[u][c]:i[u][c]=0}return i}(e,r,n=n||{}):n}(r.keepZeroFacets,l,e,u);return{index:a,hitsPerPage:d,page:g,facets:P,nbPages:h,nbHits:m,processingTimeMS:n,query:i,hits:y,params:"",exhaustiveNbHits:!1,facets_stats:v(s)}}(t,e[t.indexUid],r)}));return{results:n}}function m(t,r){var n,i,a,o=t.indexName.split(":"),u=o[0],c=o.slice(1),s=t.params,l=(n=r.finitePagination,i=null==s?void 0:s.hitsPerPage,a=null==s?void 0:s.page,{hitsPerPage:void 0===i?20:i,page:a||0,finite:!!n}),f=c.join(":").split(",").map((function(t){return t.trim()})).filter((function(t){return!!t}));return e(e(e({},r),s),{sort:f,indexUid:u,pagination:l,placeholderSearch:!1!==r.placeholderSearch,keepZeroFacets:!!r.keepZeroFacets})}function P(t){void 0===t&&(t={});var e=t;return{getEntry:function(t){if(e[t])try{return JSON.parse(e[t])}catch(t){return}},formatKey:function(t){return t.reduce((function(t,e){return t+JSON.stringify(e)}),"")},setEntry:function(t,r){e[t]=JSON.stringify(r)},clearCache:function(){e={}}}}function b(t){var r=l(e(e({},t),{placeholderSearch:!0,query:""}));return r.addFacets(),r.addIndexUid(),r.addPagination(),r.getParams()}function w(t,e,i){return r(this,void 0,void 0,(function(){var r,a,o,u,c,s;return n(this,(function(n){switch(n.label){case 0:return l="indexUid",f=[],r=function(t){return!f.includes(t[l])&&(f.push(t[l]),!0)},a=e.filter(r).filter((function(t){var e=t.indexUid;return!Object.keys(i).includes(e)})),0===a.length?[2,i]:[4,t.multiSearch(a,[])];case 1:for(o=n.sent(),u=0,c=o;u<c.length;u++)s=c[u],i[s.indexUid]=s.facetDistribution||{};return[2,i]}var l,f}))}))}var S;exports.MatchingStrategies=void 0,(S=exports.MatchingStrategies||(exports.MatchingStrategies={})).ALL="all",S.LAST="last",exports.instantMeiliSearch=function(i,o,u){void 0===o&&(o=""),void 0===u&&(u={}),function(t,e,r){var n=r.requestConfig,i=r.httpClient;if("string"!=typeof t)throw new TypeError("Provided hostUrl value (1st parameter) is not a string, expected string");if("string"!=typeof e&&"function"!=typeof e)throw new TypeError("Provided apiKey value (2nd parameter) is not a string or a function, expected string or function");if(void 0!==n&&!a(n))throw new TypeError("Provided requestConfig should be an object");if(i&&"function"!=typeof i)throw new TypeError("Provided custom httpClient should be a function")}(i,o,u);var c={host:i,apiKey:o=function(t){if("function"==typeof t){var e=t();if("string"!=typeof e)throw new TypeError("Provided apiKey function (2nd parameter) did not return a string, expected string");return e}return t}(o),clientAgents:function(t){void 0===t&&(t=[]);var e="Meilisearch instant-meilisearch (v".concat("0.13.0",")");return t.concat(e)}(u.clientAgents)};void 0!==u.httpClient&&(c.httpClient=u.httpClient),void 0!==u.requestConfig&&(c.requestConfig=u.requestConfig);var s,l,d,g,h=new t.MeiliSearch(c),p=P(),v=(s=h,l=p,d=u.handleResults,{multiSearch:function(t,i){return r(this,void 0,void 0,(function(){var r,a,o,u;return n(this,(function(n){switch(n.label){case 0:return r=l.formatKey([t]),(a=l.getEntry(r))?d?[2,d(a,t)]:[2,a]:[4,s.multiSearch({queries:t})];case 1:return o=n.sent(),u=o.results.map((function(t,r){return e(e({},t),{pagination:i[r]||{}})})),l.setEntry(r,u),d?[2,d(u,t)]:[2,u]}}))}))}}),S={},x=(g=u,e(e({},{placeholderSearch:!0,keepZeroFacets:!1,clientAgents:[],finitePagination:!1}),g));return{clearCache:function(){return p.clearCache()},search:function(t){return r(this,void 0,void 0,(function(){var e,r,i,a,o,c,s,l,d,g,h;return n(this,(function(n){switch(n.label){case 0:for(n.trys.push([0,3,,4]),e=[],r=[],i=[],a=0,o=t;a<o.length;a++)c=o[a],s=m(c,u),l=f(s),e.push(l),d=b(s),i.push(d),r.push(s.pagination);return[4,w(v,i,S)];case 1:return S=n.sent(),[4,v.multiSearch(e,r)];case 2:return g=n.sent(),[2,y(g,S,x)];case 3:throw h=n.sent(),console.error(h),new Error(h);case 4:return[2]}}))}))},searchForFacetValues:function(t){return r(this,void 0,void 0,(function(){return n(this,(function(t){switch(t.label){case 0:return[4,new Promise((function(t,e){e(new Error("SearchForFacetValues is not compatible with Meilisearch")),t([])}))];case 1:return[2,t.sent()]}}))}))}}};
//# sourceMappingURL=instant-meilisearch.cjs.min.js.map
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.esm.js b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.esm.js
index 19f006d..7030898 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.esm.js
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.esm.js
@@ -86,11 +86,6 @@ function __spreadArray(to, from, pack) {
return to.concat(ar || Array.prototype.slice.call(from));
}
-typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
- var e = new Error(message);
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
-};
-
function isPureObject(data) {
return typeof data === 'object' && !Array.isArray(data) && data !== null;
}
@@ -154,7 +149,7 @@ function validateInstantMeiliSearchParams(hostUrl, apiKey, instantMeiliSearchOpt
/**
* @param {ResponseCacher} cache
*/
-function SearchResolver(client, cache) {
+function SearchResolver(client, cache, handleResults) {
return {
multiSearch: function (searchQueries, instantSearchPagination) {
return __awaiter(this, void 0, void 0, function () {
@@ -165,8 +160,12 @@ function SearchResolver(client, cache) {
key = cache.formatKey([searchQueries]);
cachedResponse = cache.getEntry(key);
// Check if specific request is already cached with its associated search response.
- if (cachedResponse)
+ if (cachedResponse) {
+ if (handleResults) {
+ return [2 /*return*/, handleResults(cachedResponse, searchQueries)];
+ }
return [2 /*return*/, cachedResponse];
+ }
return [4 /*yield*/, client.multiSearch({
queries: searchQueries
})];
@@ -177,6 +176,9 @@ function SearchResolver(client, cache) {
pagination: instantSearchPagination[index] || {} })); });
// Cache response
cache.setEntry(key, responseWithPagination);
+ if (handleResults) {
+ return [2 /*return*/, handleResults(responseWithPagination, searchQueries)];
+ }
return [2 /*return*/, responseWithPagination];
}
});
@@ -220,42 +222,60 @@ function adaptGeoSearch(_a) {
return filter;
}
+function removeDuplicate(key) {
+ var indexes = [];
+ return function (object) {
+ if (indexes.includes(object[key])) {
+ return false;
+ }
+ indexes.push(object[key]);
+ return true;
+ };
+}
+
/**
- * Transform InstantSearch filter to Meilisearch compatible filter format.
- * Change sign from `:` to `=`
- * "facet:facetValue" becomes "facet=facetValue"
- *
- * Wrap both the facet and its facet value between quotes.
- * This avoid formating issues on facets containing multiple words.
- *
- * 'My facet:My facet value' becomes '"My facet":"My facet value"'
- *
- * @param {string} filter?
- * @returns {Filter}
+ * @param {any} str
+ * @returns {boolean}
+ */
+/**
+ * @param {string} filter
+ * @returns {string}
+ */
+function replaceColonByEqualSign(filter) {
+ // will only change first occurence of `:`
+ return filter.replace(/:(.*)/i, '="$1"');
+}
+/**
+ * @param {any[]} arr
+ * @returns {string}
*/
-function transformFilter(filter) {
- return filter.replace(/(.*):(.*)/i, '"$1"="$2"');
+function stringifyArray(arr) {
+ return arr.reduce(function (acc, curr) {
+ return (acc += JSON.stringify(curr));
+ }, '');
}
+
/**
- * Itterate over all filters.
- * Return the filters in a Meilisearch compatible format.
+ * Transform InstantSearch filter to Meilisearch filter.
+ * Change sign from `:` to `=` in nested filter object.
+ * example: [`genres:comedy`] becomes [`genres=comedy`]
*
* @param {SearchContext['facetFilters']} filters?
* @returns {Filter}
*/
-function transformFilters(filters) {
+function transformFilter(filters) {
if (typeof filters === 'string') {
- return transformFilter(filters);
+ return replaceColonByEqualSign(filters);
}
else if (Array.isArray(filters))
return filters
.map(function (filter) {
if (Array.isArray(filter))
return filter
- .map(function (nestedFilter) { return transformFilter(nestedFilter); })
+ .map(function (nestedFilter) { return replaceColonByEqualSign(nestedFilter); })
.filter(function (elem) { return elem; });
else {
- return transformFilter(filter);
+ return replaceColonByEqualSign(filter);
}
})
.filter(function (elem) { return elem; });
@@ -310,8 +330,8 @@ function mergeFilters(facetFilters, numericFilters, filters) {
* @returns {Filter}
*/
function adaptFilters(filters, numericFilters, facetFilters) {
- var transformedFilter = transformFilters(facetFilters || []);
- var transformedNumericFilter = transformFilters(numericFilters || []);
+ var transformedFilter = transformFilter(facetFilters || []);
+ var transformedNumericFilter = transformFilter(numericFilters || []);
return mergeFilters(transformedFilter, transformedNumericFilter, filters || '');
}
@@ -489,31 +509,6 @@ function adaptSearchParams(searchContext) {
return meilisearchParams.getParams();
}
-function removeDuplicate(key) {
- var indexes = [];
- return function (object) {
- if (indexes.includes(object[key])) {
- return false;
- }
- indexes.push(object[key]);
- return true;
- };
-}
-
-/**
- * @param {any} str
- * @returns {boolean}
- */
-/**
- * @param {any[]} arr
- * @returns {string}
- */
-function stringifyArray(arr) {
- return arr.reduce(function (acc, curr) {
- return (acc += JSON.stringify(curr));
- }, '');
-}
-
/**
* Stringify values following instantsearch practices.
*
@@ -768,29 +763,6 @@ function adaptSearchResult(meiliSearchResult, initialFacetDistribution, config)
return adaptedSearchResult;
}
-/**
- * Split sort string into an array.
- *
- * Example:
- * '_geoPoint(37.8153, -122.4784):asc,title:asc,description:desc'
- *
- * becomes:
- * [
- * '_geoPoint(37.8153, -122.4784):asc',
- * 'title:asc',
- * 'description:desc',
- * ]
- *
- * @param {string} sortStr
- * @returns {string[]}
- */
-function splitSortString(sortStr) {
- if (!sortStr)
- return [];
- var sortRules = sortStr.split(/,(?=\w+:(?:asc|desc))/);
- return sortRules;
-}
-
/**
* Create the current state of the pagination
*
@@ -807,43 +779,29 @@ function createPaginationState(finite, hitsPerPage, page) {
};
}
-function separateIndexFromSortRules(indexName) {
- var colonIndex = indexName.indexOf(':');
- if (colonIndex === -1) {
- return {
- indexUid: indexName,
- sortBy: ''
- };
- }
- return {
- indexUid: indexName.substring(0, colonIndex),
- sortBy: indexName.substring(colonIndex + 1)
- };
-}
/**
- * @param {AlgoliaMultipleQueriesQuery} searchRequest
- * @param {Context} options
- * @returns {SearchContext}
+ * @param {string} rawSort
+ * @returns {string[]}
*/
-function createSearchContext(searchRequest, options) {
- var query = searchRequest.query, indexName = searchRequest.indexName, instantSearchParams = searchRequest.params;
- // Split index name and possible sorting rules
- var _a = separateIndexFromSortRules(indexName), indexUid = _a.indexUid, sortBy = _a.sortBy;
- var paginationState = createPaginationState(options.finitePagination, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.hitsPerPage, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.page);
- var searchContext = __assign(__assign(__assign(__assign({}, options), { query: query }), instantSearchParams), { sort: splitSortString(sortBy), indexUid: indexUid, pagination: paginationState, placeholderSearch: options.placeholderSearch !== false, keepZeroFacets: !!options.keepZeroFacets });
- return searchContext;
+function createSortState(rawSort) {
+ return rawSort
+ .split(',')
+ .map(function (sort) { return sort.trim(); })
+ .filter(function (sort) { return !!sort; });
}
+
/**
* @param {AlgoliaMultipleQueriesQuery} searchRequest
* @param {Context} options
* @returns {SearchContext}
*/
-function createFacetSearchContext(searchRequest, options) {
+function createSearchContext(searchRequest, options) {
// Split index name and possible sorting rules
- var _a = separateIndexFromSortRules(searchRequest.indexName), indexUid = _a.indexUid, sortBy = _a.sortBy;
+ var _a = searchRequest.indexName.split(':'), indexUid = _a[0], sortByArray = _a.slice(1);
var instantSearchParams = searchRequest.params;
var paginationState = createPaginationState(options.finitePagination, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.hitsPerPage, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.page);
- var searchContext = __assign(__assign(__assign({}, options), instantSearchParams), { sort: splitSortString(sortBy), indexUid: indexUid, pagination: paginationState, placeholderSearch: options.placeholderSearch !== false, keepZeroFacets: !!options.keepZeroFacets });
+ var sortState = createSortState(sortByArray.join(':'));
+ var searchContext = __assign(__assign(__assign({}, options), instantSearchParams), { sort: sortState, indexUid: indexUid, pagination: paginationState, placeholderSearch: options.placeholderSearch !== false, keepZeroFacets: !!options.keepZeroFacets });
return searchContext;
}
@@ -922,15 +880,8 @@ function initFacetDistribution(searchResolver, queries, initialFacetDistribution
});
});
}
-function fillMissingFacets(initialFacetDistribution, meilisearchResults) {
- for (var _i = 0, meilisearchResults_1 = meilisearchResults; _i < meilisearchResults_1.length; _i++) {
- var searchResult = meilisearchResults_1[_i];
- initialFacetDistribution[searchResult.indexUid] = __assign(__assign({}, (searchResult.facetDistribution || {})), (initialFacetDistribution[searchResult.indexUid] || {}));
- }
- return initialFacetDistribution;
-}
-var PACKAGE_VERSION = '0.13.6';
+var PACKAGE_VERSION = '0.13.0';
var constructClientAgents = function (clientAgents) {
if (clientAgents === void 0) { clientAgents = []; }
@@ -967,7 +918,7 @@ function instantMeiliSearch(hostUrl, apiKey, instantMeiliSearchOptions) {
var meilisearchClient = new MeiliSearch(meilisearchConfig);
var searchCache = SearchCache();
// create search resolver with included cache
- var searchResolver = SearchResolver(meilisearchClient, searchCache);
+ var searchResolver = SearchResolver(meilisearchClient, searchCache, instantMeiliSearchOptions.handleResults);
var initialFacetDistribution = {};
var instantMeilisearchConfig = getInstantMeilisearchConfig(instantMeiliSearchOptions);
return {
@@ -1003,13 +954,9 @@ function instantMeiliSearch(hostUrl, apiKey, instantMeiliSearchOptions) {
case 1:
initialFacetDistribution = _a.sent();
return [4 /*yield*/, searchResolver.multiSearch(meilisearchRequests, instantSearchPagination // Create issue on pagination
- )
- // Fill the missing facet values if keepZeroFacets is true
- ];
+ )];
case 2:
meilisearchResults = _a.sent();
- // Fill the missing facet values if keepZeroFacets is true
- initialFacetDistribution = fillMissingFacets(initialFacetDistribution, meilisearchResults);
instantSearchResponse = adaptSearchResults(meilisearchResults, initialFacetDistribution, instantMeilisearchConfig);
return [2 /*return*/, instantSearchResponse];
case 3:
@@ -1021,41 +968,15 @@ function instantMeiliSearch(hostUrl, apiKey, instantMeiliSearchOptions) {
});
});
},
- searchForFacetValues: function (requests) {
+ searchForFacetValues: function (_) {
return __awaiter(this, void 0, void 0, function () {
- var results, _i, requests_1, request, searchContext, meilisearchSearchQuery, meilisearchRequest, meilisearchResponse, facetHits, result;
return __generator(this, function (_a) {
switch (_a.label) {
- case 0:
- results = [];
- _i = 0, requests_1 = requests;
- _a.label = 1;
- case 1:
- if (!(_i < requests_1.length)) return [3 /*break*/, 4];
- request = requests_1[_i];
- searchContext = createFacetSearchContext(request, instantMeiliSearchOptions);
- meilisearchSearchQuery = adaptSearchParams(searchContext);
- meilisearchRequest = __assign(__assign({}, meilisearchSearchQuery), { facetQuery: request.params.facetQuery, facetName: request.params.facetName });
- delete meilisearchRequest.indexUid;
- return [4 /*yield*/, meilisearchClient
- .index(searchContext.indexUid)
- .searchForFacetValues(meilisearchRequest)];
- case 2:
- meilisearchResponse = _a.sent();
- facetHits = meilisearchResponse.facetHits.map(function (facetHit) { return (__assign(__assign({}, facetHit), {
- // not currently supported
- highlighted: facetHit.value })); });
- result = {
- facetHits: facetHits,
- exhaustiveFacetsCount: false,
- processingTimeMS: meilisearchResponse.processingTimeMs
- };
- results.push(result);
- _a.label = 3;
- case 3:
- _i++;
- return [3 /*break*/, 1];
- case 4: return [2 /*return*/, results];
+ case 0: return [4 /*yield*/, new Promise(function (resolve, reject) {
+ reject(new Error('SearchForFacetValues is not compatible with Meilisearch'));
+ resolve([]); // added here to avoid compilation error
+ })];
+ case 1: return [2 /*return*/, _a.sent()];
}
});
});
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.esm.min.js b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.esm.min.js
index 596a7dc..19e3c9c 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.esm.min.js
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.esm.min.js
@@ -1,2 +1,2 @@
-import{MeiliSearch as t}from"meilisearch";var e=function(){return e=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},e.apply(this,arguments)};function r(t,e,r,n){return new(r||(r=Promise))((function(i,a){function o(t){try{c(n.next(t))}catch(t){a(t)}}function u(t){try{c(n.throw(t))}catch(t){a(t)}}function c(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,u)}c((n=n.apply(t,e||[])).next())}))}function n(t,e){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(u){return function(c){return function(u){if(r)throw new TypeError("Generator is already executing.");for(;a&&(a=0,u[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&u[0]?n.return:u[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,u[1])).done)return i;switch(n=0,i&&(u=[2&u[0],i.value]),u[0]){case 0:case 1:i=u;break;case 4:return o.label++,{value:u[1],done:!1};case 5:o.label++,n=u[1],u=[0];continue;case 7:u=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==u[0]&&2!==u[0])){o=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]<i[3])){o.label=u[1];break}if(6===u[0]&&o.label<i[1]){o.label=i[1],i=u;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(u);break}i[2]&&o.ops.pop(),o.trys.pop();continue}u=e.call(t,o)}catch(t){u=[6,t],n=0}finally{r=i=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,c])}}}function i(t,e,r){if(r||2===arguments.length)for(var n,i=0,a=e.length;i<a;i++)!n&&i in e||(n||(n=Array.prototype.slice.call(e,0,i)),n[i]=e[i]);return t.concat(n||Array.prototype.slice.call(e))}function a(t){return"object"==typeof t&&!Array.isArray(t)&&null!==t}function o(t){return t.replace(/(.*):(.*)/i,'"$1"="$2"')}function u(t){return"string"==typeof t?o(t):Array.isArray(t)?t.map((function(t){return Array.isArray(t)?t.map((function(t){return o(t)})).filter((function(t){return t})):o(t)})).filter((function(t){return t})):[]}function c(t){return""===t?[]:"string"==typeof t?[t]:t}function s(t,e,r){return function(t,e,r){var n=r.trim(),a=c(t),o=c(e);return i(i(i([],a,!0),o,!0),[n],!1).filter((function(t){return Array.isArray(t)?t.length:t}))}(u(r||[]),u(e||[]),t||"")}function f(t){var e={},r=t.facets,n=t.attributesToSnippet,i=t.snippetEllipsisText,a=t.attributesToRetrieve,o=t.attributesToHighlight,u=t.highlightPreTag,c=t.highlightPostTag,f=t.placeholderSearch,l=t.query,d=t.sort,g=t.pagination,h=t.matchingStrategy,p=t.filters,v=t.numericFilters,y=t.facetFilters,m=t.indexUid,b=s(p,v,y);return{getParams:function(){return e},addQuery:function(){e.q=l},addIndexUid:function(){e.indexUid=m},addFacets:function(){Array.isArray(r)?e.facets=r:"string"==typeof r&&(e.facets=[r])},addAttributesToCrop:function(){n&&(e.attributesToCrop=n)},addCropMarker:function(){null!=i&&(e.cropMarker=i)},addAttributesToRetrieve:function(){a&&(e.attributesToRetrieve=a)},addFilters:function(){b.length&&(e.filter=b)},addAttributesToHighlight:function(){e.attributesToHighlight=o||["*"]},addPreTag:function(){e.highlightPreTag=u||"__ais-highlight__"},addPostTag:function(){e.highlightPostTag=c||"__/ais-highlight__"},addPagination:function(){var t=function(t,e,r){return!!(r||e||t&&0!==t.length)}(b,l,f);if(g.finite){var r=function(t,e){var r=t.page,n=t.hitsPerPage;return e?{hitsPerPage:n,page:r+1}:{hitsPerPage:0,page:r+1}}(g,t),n=r.hitsPerPage,i=r.page;e.hitsPerPage=n,e.page=i}else{var a=function(t,e){var r=t.page,n=t.hitsPerPage;return e?{limit:n+1,offset:r*n}:{limit:0,offset:0}}(g,t),o=a.limit,u=a.offset;e.limit=o,e.offset=u}},addSort:function(){(null==d?void 0:d.length)&&(e.sort=Array.isArray(d)?d:[d])},addGeoSearchFilter:function(){var r=function(t){var e,r,n,i=t.insideBoundingBox,a=t.aroundLatLng,o=t.aroundRadius,u=t.minimumAroundRadius;if(a){var c=a.split(",").map((function(t){return Number.parseFloat(t).toFixed(5)}));e=[h=c[0],p=c[1]]}if(null==o&&null==u||("all"===o?console.warn("instant-meilisearch is not compatible with the `all` value on the aroundRadius parameter"):r=null!=o?o:u),i&&"string"==typeof i){var s=i.split(",").map((function(t){return parseFloat(t)})),f=s[0],l=s[1],d=s[2],g=s[3];n="_geoBoundingBox([".concat(f,", ").concat(l,"], [").concat(d,", ").concat(g,"])")}else if(null!=e&&null!=r){var h=e[0],p=e[1];n="_geoRadius(".concat(h,", ").concat(p,", ").concat(r,")")}return n}({insideBoundingBox:t.insideBoundingBox,aroundLatLng:t.aroundLatLng,aroundRadius:t.aroundRadius,minimumAroundRadius:t.minimumAroundRadius});r&&(e.filter?e.filter.unshift(r):e.filter=[r])},addMatchingStrategy:function(){h&&(e.matchingStrategy=h)}}}function l(t){var e=f(t);return e.addQuery(),e.addIndexUid(),e.addFacets(),e.addAttributesToHighlight(),e.addPreTag(),e.addPostTag(),e.addAttributesToRetrieve(),e.addAttributesToCrop(),e.addCropMarker(),e.addPagination(),e.addFilters(),e.addSort(),e.addGeoSearchFilter(),e.addMatchingStrategy(),e.getParams()}function d(t){return"string"==typeof t?t:void 0===t?JSON.stringify(null):JSON.stringify(t)}function g(t){return Array.isArray(t)?t.map((function(t){return g(t)})):a(t)?Object.keys(t).reduce((function(e,r){return e[r]=g(t[r]),e}),{}):{value:d(t)}}function h(t){if(!t)return{};var e=g(t);return{_highlightResult:e,_snippetResult:e}}function p(t,e){var r=t.hits,n=t.pagination.hitsPerPage,i=e.finitePagination,a=e.primaryKey;!i&&r.length>n&&r.splice(r.length-1,1);var o=r.map((function(t){if(Object.keys(t).length>0){var e=t._formatted;t._matchesPosition;var r=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]])}return r}(t,["_formatted","_matchesPosition"]),n=Object.assign(r,h(e));return a&&(n.objectID=t[a]),n}return t}));return o=function(t){for(var e,r=0;r<t.length;r++){var n="".concat(r+1e6*Math.random());t[r]._geo&&(t[r]._geoloc=t[r]._geo,t[r].objectID=n),(null===(e=t[r]._formatted)||void 0===e?void 0:e._geo)&&(t[r]._formatted._geoloc=t[r]._formatted._geo,t[r]._formatted.objectID=n)}return t}(o),o}function v(t){return Object.keys(t).reduce((function(r,n){return r[n]=e(e({},t[n]),{avg:0,sum:0}),r}),{})}function y(t,e,r){var n=t.map((function(t){return function(t,e,r){var n=t.processingTimeMs,i=t.query,a=t.indexUid,o=t.facetDistribution,u=void 0===o?{}:o,c=t.facetStats,s=void 0===c?{}:c,f=Object.keys(u),l=function(t,e){var r=e.hitsPerPage,n=e.page,i=function(t,e){if(null!=t.totalPages)return t.totalPages;if(0===e)return 0;var r=t.limit,n=void 0===r?20:r,i=t.offset;return(void 0===i?0:i)/e+1+(t.hits.length>=n?1:0)}(t,r);return{page:n,nbPages:i,hitsPerPage:r}}(t,t.pagination),d=l.hitsPerPage,g=l.page,h=l.nbPages,y=p(t,r),m=function(t){var e=t.hitsPerPage,r=void 0===e?0:e,n=t.totalPages,i=void 0===n?0:n,a=t.estimatedTotalHits,o=t.totalHits;return null!=a?a:null!=o?o:r*i}(t),b=function(t,e,r,n){return t?function(t,e,r){for(var n=function(t){return t?"string"==typeof t?[t]:t:[]}(t),i={},a=0,o=n;a<o.length;a++){var u=o[a];for(var c in e[u])i[u]||(i[u]=r[u]||{}),i[u][c]?i[u][c]=r[u][c]:i[u][c]=0}return i}(e,r,n=n||{}):n}(r.keepZeroFacets,f,e,u);return{index:a,hitsPerPage:d,page:g,facets:b,nbPages:h,nbHits:m,processingTimeMS:n,query:i,hits:y,params:"",exhaustiveNbHits:!1,facets_stats:v(s)}}(t,e[t.indexUid],r)}));return{results:n}}function m(t){return t?t.split(/,(?=\w+:(?:asc|desc))/):[]}function b(t,e,r){return{hitsPerPage:void 0===e?20:e,page:r||0,finite:!!t}}function P(t){var e=t.indexOf(":");return-1===e?{indexUid:t,sortBy:""}:{indexUid:t.substring(0,e),sortBy:t.substring(e+1)}}function x(t,r){var n=t.query,i=t.indexName,a=t.params,o=P(i),u=o.indexUid,c=o.sortBy,s=b(r.finitePagination,null==a?void 0:a.hitsPerPage,null==a?void 0:a.page);return e(e(e(e({},r),{query:n}),a),{sort:m(c),indexUid:u,pagination:s,placeholderSearch:!1!==r.placeholderSearch,keepZeroFacets:!!r.keepZeroFacets})}function S(t){void 0===t&&(t={});var e=t;return{getEntry:function(t){if(e[t])try{return JSON.parse(e[t])}catch(t){return}},formatKey:function(t){return t.reduce((function(t,e){return t+JSON.stringify(e)}),"")},setEntry:function(t,r){e[t]=JSON.stringify(r)},clearCache:function(){e={}}}}function w(t){var r=f(e(e({},t),{placeholderSearch:!0,query:""}));return r.addFacets(),r.addIndexUid(),r.addPagination(),r.getParams()}function T(t,e,i){return r(this,void 0,void 0,(function(){var r,a,o,u,c,s;return n(this,(function(n){switch(n.label){case 0:return f="indexUid",l=[],r=function(t){return!l.includes(t[f])&&(l.push(t[f]),!0)},a=e.filter(r).filter((function(t){var e=t.indexUid;return!Object.keys(i).includes(e)})),0===a.length?[2,i]:[4,t.multiSearch(a,[])];case 1:for(o=n.sent(),u=0,c=o;u<c.length;u++)s=c[u],i[s.indexUid]=s.facetDistribution||{};return[2,i]}var f,l}))}))}"function"==typeof SuppressedError&&SuppressedError;var A;function _(i,o,u){void 0===o&&(o=""),void 0===u&&(u={}),function(t,e,r){var n=r.requestConfig,i=r.httpClient;if("string"!=typeof t)throw new TypeError("Provided hostUrl value (1st parameter) is not a string, expected string");if("string"!=typeof e&&"function"!=typeof e)throw new TypeError("Provided apiKey value (2nd parameter) is not a string or a function, expected string or function");if(void 0!==n&&!a(n))throw new TypeError("Provided requestConfig should be an object");if(i&&"function"!=typeof i)throw new TypeError("Provided custom httpClient should be a function")}(i,o,u);var c={host:i,apiKey:o=function(t){if("function"==typeof t){var e=t();if("string"!=typeof e)throw new TypeError("Provided apiKey function (2nd parameter) did not return a string, expected string");return e}return t}(o),clientAgents:function(t){void 0===t&&(t=[]);var e="Meilisearch instant-meilisearch (v".concat("0.13.6",")");return t.concat(e)}(u.clientAgents)};void 0!==u.httpClient&&(c.httpClient=u.httpClient),void 0!==u.requestConfig&&(c.requestConfig=u.requestConfig);var s,f,d,g=new t(c),h=S(),p=(s=g,f=h,{multiSearch:function(t,i){return r(this,void 0,void 0,(function(){var r,a,o,u;return n(this,(function(n){switch(n.label){case 0:return r=f.formatKey([t]),(a=f.getEntry(r))?[2,a]:[4,s.multiSearch({queries:t})];case 1:return o=n.sent(),u=o.results.map((function(t,r){return e(e({},t),{pagination:i[r]||{}})})),f.setEntry(r,u),[2,u]}}))}))}}),v={},A=(d=u,e(e({},{placeholderSearch:!0,keepZeroFacets:!1,clientAgents:[],finitePagination:!1}),d));return{clearCache:function(){return h.clearCache()},search:function(t){return r(this,void 0,void 0,(function(){var r,i,a,o,c,s,f,d,g,h,m;return n(this,(function(n){switch(n.label){case 0:for(n.trys.push([0,3,,4]),r=[],i=[],a=[],o=0,c=t;o<c.length;o++)s=c[o],f=x(s,u),d=l(f),r.push(d),g=w(f),a.push(g),i.push(f.pagination);return[4,T(p,a,v)];case 1:return v=n.sent(),[4,p.multiSearch(r,i)];case 2:return h=n.sent(),v=function(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];t[a.indexUid]=e(e({},a.facetDistribution||{}),t[a.indexUid]||{})}return t}(v,h),[2,y(h,v,A)];case 3:throw m=n.sent(),console.error(m),new Error(m);case 4:return[2]}}))}))},searchForFacetValues:function(t){return r(this,void 0,void 0,(function(){var r,i,a,o,c,s,f,d,h,p;return n(this,(function(n){switch(n.label){case 0:r=[],i=0,a=t,n.label=1;case 1:return i<a.length?(o=a[i],c=function(t,r){var n=P(t.indexName),i=n.indexUid,a=n.sortBy,o=t.params,u=b(r.finitePagination,null==o?void 0:o.hitsPerPage,null==o?void 0:o.page);return e(e(e({},r),o),{sort:m(a),indexUid:i,pagination:u,placeholderSearch:!1!==r.placeholderSearch,keepZeroFacets:!!r.keepZeroFacets})}(o,u),s=l(c),delete(f=e(e({},s),{facetQuery:o.params.facetQuery,facetName:o.params.facetName})).indexUid,[4,g.index(c.indexUid).searchForFacetValues(f)]):[3,4];case 2:d=n.sent(),h=d.facetHits.map((function(t){return e(e({},t),{highlighted:t.value})})),p={facetHits:h,exhaustiveFacetsCount:!1,processingTimeMS:d.processingTimeMs},r.push(p),n.label=3;case 3:return i++,[3,1];case 4:return[2,r]}}))}))}}}!function(t){t.ALL="all",t.LAST="last"}(A||(A={}));export{A as MatchingStrategies,_ as instantMeiliSearch};
+import{MeiliSearch as t}from"meilisearch";var e=function(){return e=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},e.apply(this,arguments)};function n(t,e,n,r){return new(n||(n=Promise))((function(i,a){function o(t){try{c(r.next(t))}catch(t){a(t)}}function u(t){try{c(r.throw(t))}catch(t){a(t)}}function c(t){var e;t.done?i(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(o,u)}c((r=r.apply(t,e||[])).next())}))}function r(t,e){var n,r,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function u(u){return function(c){return function(u){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,u[0]&&(o=0)),o;)try{if(n=1,r&&(i=2&u[0]?r.return:u[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,u[1])).done)return i;switch(r=0,i&&(u=[2&u[0],i.value]),u[0]){case 0:case 1:i=u;break;case 4:return o.label++,{value:u[1],done:!1};case 5:o.label++,r=u[1],u=[0];continue;case 7:u=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==u[0]&&2!==u[0])){o=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]<i[3])){o.label=u[1];break}if(6===u[0]&&o.label<i[1]){o.label=i[1],i=u;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(u);break}i[2]&&o.ops.pop(),o.trys.pop();continue}u=e.call(t,o)}catch(t){u=[6,t],r=0}finally{n=i=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,c])}}}function i(t,e,n){if(n||2===arguments.length)for(var r,i=0,a=e.length;i<a;i++)!r&&i in e||(r||(r=Array.prototype.slice.call(e,0,i)),r[i]=e[i]);return t.concat(r||Array.prototype.slice.call(e))}function a(t){return"object"==typeof t&&!Array.isArray(t)&&null!==t}function o(t){return t.replace(/:(.*)/i,'="$1"')}function u(t){return"string"==typeof t?o(t):Array.isArray(t)?t.map((function(t){return Array.isArray(t)?t.map((function(t){return o(t)})).filter((function(t){return t})):o(t)})).filter((function(t){return t})):[]}function c(t){return""===t?[]:"string"==typeof t?[t]:t}function s(t,e,n){return function(t,e,n){var r=n.trim(),a=c(t),o=c(e);return i(i(i([],a,!0),o,!0),[r],!1).filter((function(t){return Array.isArray(t)?t.length:t}))}(u(n||[]),u(e||[]),t||"")}function f(t){var e={},n=t.facets,r=t.attributesToSnippet,i=t.snippetEllipsisText,a=t.attributesToRetrieve,o=t.attributesToHighlight,u=t.highlightPreTag,c=t.highlightPostTag,f=t.placeholderSearch,l=t.query,d=t.sort,g=t.pagination,h=t.matchingStrategy,p=t.filters,v=t.numericFilters,y=t.facetFilters,m=t.indexUid,P=s(p,v,y);return{getParams:function(){return e},addQuery:function(){e.q=l},addIndexUid:function(){e.indexUid=m},addFacets:function(){Array.isArray(n)?e.facets=n:"string"==typeof n&&(e.facets=[n])},addAttributesToCrop:function(){r&&(e.attributesToCrop=r)},addCropMarker:function(){null!=i&&(e.cropMarker=i)},addAttributesToRetrieve:function(){a&&(e.attributesToRetrieve=a)},addFilters:function(){P.length&&(e.filter=P)},addAttributesToHighlight:function(){e.attributesToHighlight=o||["*"]},addPreTag:function(){e.highlightPreTag=u||"__ais-highlight__"},addPostTag:function(){e.highlightPostTag=c||"__/ais-highlight__"},addPagination:function(){var t=function(t,e,n){return!!(n||e||t&&0!==t.length)}(P,l,f);if(g.finite){var n=function(t,e){var n=t.page,r=t.hitsPerPage;return e?{hitsPerPage:r,page:n+1}:{hitsPerPage:0,page:n+1}}(g,t),r=n.hitsPerPage,i=n.page;e.hitsPerPage=r,e.page=i}else{var a=function(t,e){var n=t.page,r=t.hitsPerPage;return e?{limit:r+1,offset:n*r}:{limit:0,offset:0}}(g,t),o=a.limit,u=a.offset;e.limit=o,e.offset=u}},addSort:function(){(null==d?void 0:d.length)&&(e.sort=Array.isArray(d)?d:[d])},addGeoSearchFilter:function(){var n=function(t){var e,n,r,i=t.insideBoundingBox,a=t.aroundLatLng,o=t.aroundRadius,u=t.minimumAroundRadius;if(a){var c=a.split(",").map((function(t){return Number.parseFloat(t).toFixed(5)}));e=[h=c[0],p=c[1]]}if(null==o&&null==u||("all"===o?console.warn("instant-meilisearch is not compatible with the `all` value on the aroundRadius parameter"):n=null!=o?o:u),i&&"string"==typeof i){var s=i.split(",").map((function(t){return parseFloat(t)})),f=s[0],l=s[1],d=s[2],g=s[3];r="_geoBoundingBox([".concat(f,", ").concat(l,"], [").concat(d,", ").concat(g,"])")}else if(null!=e&&null!=n){var h=e[0],p=e[1];r="_geoRadius(".concat(h,", ").concat(p,", ").concat(n,")")}return r}({insideBoundingBox:t.insideBoundingBox,aroundLatLng:t.aroundLatLng,aroundRadius:t.aroundRadius,minimumAroundRadius:t.minimumAroundRadius});n&&(e.filter?e.filter.unshift(n):e.filter=[n])},addMatchingStrategy:function(){h&&(e.matchingStrategy=h)}}}function l(t){var e=f(t);return e.addQuery(),e.addIndexUid(),e.addFacets(),e.addAttributesToHighlight(),e.addPreTag(),e.addPostTag(),e.addAttributesToRetrieve(),e.addAttributesToCrop(),e.addCropMarker(),e.addPagination(),e.addFilters(),e.addSort(),e.addGeoSearchFilter(),e.addMatchingStrategy(),e.getParams()}function d(t){return"string"==typeof t?t:void 0===t?JSON.stringify(null):JSON.stringify(t)}function g(t){return Array.isArray(t)?t.map((function(t){return g(t)})):a(t)?Object.keys(t).reduce((function(e,n){return e[n]=g(t[n]),e}),{}):{value:d(t)}}function h(t){if(!t)return{};var e=g(t);return{_highlightResult:e,_snippetResult:e}}function p(t,e){var n=t.hits,r=t.pagination.hitsPerPage,i=e.finitePagination,a=e.primaryKey;!i&&n.length>r&&n.splice(n.length-1,1);var o=n.map((function(t){if(Object.keys(t).length>0){var e=t._formatted;t._matchesPosition;var n=function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]])}return n}(t,["_formatted","_matchesPosition"]),r=Object.assign(n,h(e));return a&&(r.objectID=t[a]),r}return t}));return o=function(t){for(var e,n=0;n<t.length;n++){var r="".concat(n+1e6*Math.random());t[n]._geo&&(t[n]._geoloc=t[n]._geo,t[n].objectID=r),(null===(e=t[n]._formatted)||void 0===e?void 0:e._geo)&&(t[n]._formatted._geoloc=t[n]._formatted._geo,t[n]._formatted.objectID=r)}return t}(o),o}function v(t){return Object.keys(t).reduce((function(n,r){return n[r]=e(e({},t[r]),{avg:0,sum:0}),n}),{})}function y(t,e,n){var r=t.map((function(t){return function(t,e,n){var r=t.processingTimeMs,i=t.query,a=t.indexUid,o=t.facetDistribution,u=void 0===o?{}:o,c=t.facetStats,s=void 0===c?{}:c,f=Object.keys(u),l=function(t,e){var n=e.hitsPerPage,r=e.page,i=function(t,e){if(null!=t.totalPages)return t.totalPages;if(0===e)return 0;var n=t.limit,r=void 0===n?20:n,i=t.offset;return(void 0===i?0:i)/e+1+(t.hits.length>=r?1:0)}(t,n);return{page:r,nbPages:i,hitsPerPage:n}}(t,t.pagination),d=l.hitsPerPage,g=l.page,h=l.nbPages,y=p(t,n),m=function(t){var e=t.hitsPerPage,n=void 0===e?0:e,r=t.totalPages,i=void 0===r?0:r,a=t.estimatedTotalHits,o=t.totalHits;return null!=a?a:null!=o?o:n*i}(t),P=function(t,e,n,r){return t?function(t,e,n){for(var r=function(t){return t?"string"==typeof t?[t]:t:[]}(t),i={},a=0,o=r;a<o.length;a++){var u=o[a];for(var c in e[u])i[u]||(i[u]=n[u]||{}),i[u][c]?i[u][c]=n[u][c]:i[u][c]=0}return i}(e,n,r=r||{}):r}(n.keepZeroFacets,f,e,u);return{index:a,hitsPerPage:d,page:g,facets:P,nbPages:h,nbHits:m,processingTimeMS:r,query:i,hits:y,params:"",exhaustiveNbHits:!1,facets_stats:v(s)}}(t,e[t.indexUid],n)}));return{results:r}}function m(t,n){var r,i,a,o=t.indexName.split(":"),u=o[0],c=o.slice(1),s=t.params,f=(r=n.finitePagination,i=null==s?void 0:s.hitsPerPage,a=null==s?void 0:s.page,{hitsPerPage:void 0===i?20:i,page:a||0,finite:!!r}),l=c.join(":").split(",").map((function(t){return t.trim()})).filter((function(t){return!!t}));return e(e(e({},n),s),{sort:l,indexUid:u,pagination:f,placeholderSearch:!1!==n.placeholderSearch,keepZeroFacets:!!n.keepZeroFacets})}function P(t){void 0===t&&(t={});var e=t;return{getEntry:function(t){if(e[t])try{return JSON.parse(e[t])}catch(t){return}},formatKey:function(t){return t.reduce((function(t,e){return t+JSON.stringify(e)}),"")},setEntry:function(t,n){e[t]=JSON.stringify(n)},clearCache:function(){e={}}}}function b(t){var n=f(e(e({},t),{placeholderSearch:!0,query:""}));return n.addFacets(),n.addIndexUid(),n.addPagination(),n.getParams()}function w(t,e,i){return n(this,void 0,void 0,(function(){var n,a,o,u,c,s;return r(this,(function(r){switch(r.label){case 0:return f="indexUid",l=[],n=function(t){return!l.includes(t[f])&&(l.push(t[f]),!0)},a=e.filter(n).filter((function(t){var e=t.indexUid;return!Object.keys(i).includes(e)})),0===a.length?[2,i]:[4,t.multiSearch(a,[])];case 1:for(o=r.sent(),u=0,c=o;u<c.length;u++)s=c[u],i[s.indexUid]=s.facetDistribution||{};return[2,i]}var f,l}))}))}var x;function S(i,o,u){void 0===o&&(o=""),void 0===u&&(u={}),function(t,e,n){var r=n.requestConfig,i=n.httpClient;if("string"!=typeof t)throw new TypeError("Provided hostUrl value (1st parameter) is not a string, expected string");if("string"!=typeof e&&"function"!=typeof e)throw new TypeError("Provided apiKey value (2nd parameter) is not a string or a function, expected string or function");if(void 0!==r&&!a(r))throw new TypeError("Provided requestConfig should be an object");if(i&&"function"!=typeof i)throw new TypeError("Provided custom httpClient should be a function")}(i,o,u);var c={host:i,apiKey:o=function(t){if("function"==typeof t){var e=t();if("string"!=typeof e)throw new TypeError("Provided apiKey function (2nd parameter) did not return a string, expected string");return e}return t}(o),clientAgents:function(t){void 0===t&&(t=[]);var e="Meilisearch instant-meilisearch (v".concat("0.13.0",")");return t.concat(e)}(u.clientAgents)};void 0!==u.httpClient&&(c.httpClient=u.httpClient),void 0!==u.requestConfig&&(c.requestConfig=u.requestConfig);var s,f,d,g,h=new t(c),p=P(),v=(s=h,f=p,d=u.handleResults,{multiSearch:function(t,i){return n(this,void 0,void 0,(function(){var n,a,o,u;return r(this,(function(r){switch(r.label){case 0:return n=f.formatKey([t]),(a=f.getEntry(n))?d?[2,d(a,t)]:[2,a]:[4,s.multiSearch({queries:t})];case 1:return o=r.sent(),u=o.results.map((function(t,n){return e(e({},t),{pagination:i[n]||{}})})),f.setEntry(n,u),d?[2,d(u,t)]:[2,u]}}))}))}}),x={},S=(g=u,e(e({},{placeholderSearch:!0,keepZeroFacets:!1,clientAgents:[],finitePagination:!1}),g));return{clearCache:function(){return p.clearCache()},search:function(t){return n(this,void 0,void 0,(function(){var e,n,i,a,o,c,s,f,d,g,h;return r(this,(function(r){switch(r.label){case 0:for(r.trys.push([0,3,,4]),e=[],n=[],i=[],a=0,o=t;a<o.length;a++)c=o[a],s=m(c,u),f=l(s),e.push(f),d=b(s),i.push(d),n.push(s.pagination);return[4,w(v,i,x)];case 1:return x=r.sent(),[4,v.multiSearch(e,n)];case 2:return g=r.sent(),[2,y(g,x,S)];case 3:throw h=r.sent(),console.error(h),new Error(h);case 4:return[2]}}))}))},searchForFacetValues:function(t){return n(this,void 0,void 0,(function(){return r(this,(function(t){switch(t.label){case 0:return[4,new Promise((function(t,e){e(new Error("SearchForFacetValues is not compatible with Meilisearch")),t([])}))];case 1:return[2,t.sent()]}}))}))}}}!function(t){t.ALL="all",t.LAST="last"}(x||(x={}));export{x as MatchingStrategies,S as instantMeiliSearch};
//# sourceMappingURL=instant-meilisearch.esm.min.js.map
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.js b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.js
index b779eca..fa24ef6 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.js
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.js
@@ -1,8 +1,12 @@
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('cross-fetch/polyfill')) :
typeof define === 'function' && define.amd ? define(['exports', 'cross-fetch/polyfill'], factory) :
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.window = global.window || {}));
-}(this, (function (exports) { 'use strict';
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.window = global.window || {}, global.require$$0));
+}(this, (function (exports, require$$0) { 'use strict';
+
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
+
+ var require$$0__default = /*#__PURE__*/_interopDefaultLegacy(require$$0);
/******************************************************************************
Copyright (c) Microsoft Corporation.
@@ -90,11 +94,6 @@
return to.concat(ar || Array.prototype.slice.call(from));
}
- typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
- var e = new Error(message);
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
- };
-
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
function createCommonjsModule(fn) {
@@ -104,7 +103,7 @@
var meilisearch_umd = createCommonjsModule(function (module, exports) {
(function (global, factory) {
- factory(exports) ;
+ factory(exports, require$$0__default['default']) ;
})(commonjsGlobal, function (exports) {
// Type definitions for meilisearch
@@ -120,557 +119,6 @@
ALL: 'all',
LAST: 'last'
};
- var ContentTypeEnum = {
- JSON: 'application/json',
- CSV: 'text/csv',
- NDJSON: 'application/x-ndjson'
- };
- function _regeneratorRuntime() {
- /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
-
- _regeneratorRuntime = function () {
- return exports;
- };
- var exports = {},
- Op = Object.prototype,
- hasOwn = Op.hasOwnProperty,
- $Symbol = "function" == typeof Symbol ? Symbol : {},
- iteratorSymbol = $Symbol.iterator || "@@iterator",
- asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator",
- toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
- function define(obj, key, value) {
- return Object.defineProperty(obj, key, {
- value: value,
- enumerable: !0,
- configurable: !0,
- writable: !0
- }), obj[key];
- }
- try {
- define({}, "");
- } catch (err) {
- define = function (obj, key, value) {
- return obj[key] = value;
- };
- }
- function wrap(innerFn, outerFn, self, tryLocsList) {
- var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,
- generator = Object.create(protoGenerator.prototype),
- context = new Context(tryLocsList || []);
- return generator._invoke = function (innerFn, self, context) {
- var state = "suspendedStart";
- return function (method, arg) {
- if ("executing" === state) throw new Error("Generator is already running");
- if ("completed" === state) {
- if ("throw" === method) throw arg;
- return doneResult();
- }
- for (context.method = method, context.arg = arg;;) {
- var delegate = context.delegate;
- if (delegate) {
- var delegateResult = maybeInvokeDelegate(delegate, context);
- if (delegateResult) {
- if (delegateResult === ContinueSentinel) continue;
- return delegateResult;
- }
- }
- if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) {
- if ("suspendedStart" === state) throw state = "completed", context.arg;
- context.dispatchException(context.arg);
- } else "return" === context.method && context.abrupt("return", context.arg);
- state = "executing";
- var record = tryCatch(innerFn, self, context);
- if ("normal" === record.type) {
- if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue;
- return {
- value: record.arg,
- done: context.done
- };
- }
- "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg);
- }
- };
- }(innerFn, self, context), generator;
- }
- function tryCatch(fn, obj, arg) {
- try {
- return {
- type: "normal",
- arg: fn.call(obj, arg)
- };
- } catch (err) {
- return {
- type: "throw",
- arg: err
- };
- }
- }
- exports.wrap = wrap;
- var ContinueSentinel = {};
- function Generator() {}
- function GeneratorFunction() {}
- function GeneratorFunctionPrototype() {}
- var IteratorPrototype = {};
- define(IteratorPrototype, iteratorSymbol, function () {
- return this;
- });
- var getProto = Object.getPrototypeOf,
- NativeIteratorPrototype = getProto && getProto(getProto(values([])));
- NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);
- var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);
- function defineIteratorMethods(prototype) {
- ["next", "throw", "return"].forEach(function (method) {
- define(prototype, method, function (arg) {
- return this._invoke(method, arg);
- });
- });
- }
- function AsyncIterator(generator, PromiseImpl) {
- function invoke(method, arg, resolve, reject) {
- var record = tryCatch(generator[method], generator, arg);
- if ("throw" !== record.type) {
- var result = record.arg,
- value = result.value;
- return value && "object" == typeof value && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) {
- invoke("next", value, resolve, reject);
- }, function (err) {
- invoke("throw", err, resolve, reject);
- }) : PromiseImpl.resolve(value).then(function (unwrapped) {
- result.value = unwrapped, resolve(result);
- }, function (error) {
- return invoke("throw", error, resolve, reject);
- });
- }
- reject(record.arg);
- }
- var previousPromise;
- this._invoke = function (method, arg) {
- function callInvokeWithMethodAndArg() {
- return new PromiseImpl(function (resolve, reject) {
- invoke(method, arg, resolve, reject);
- });
- }
- return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
- };
- }
- function maybeInvokeDelegate(delegate, context) {
- var method = delegate.iterator[context.method];
- if (undefined === method) {
- if (context.delegate = null, "throw" === context.method) {
- if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel;
- context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method");
- }
- return ContinueSentinel;
- }
- var record = tryCatch(method, delegate.iterator, context.arg);
- if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel;
- var info = record.arg;
- return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel);
- }
- function pushTryEntry(locs) {
- var entry = {
- tryLoc: locs[0]
- };
- 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);
- }
- function resetTryEntry(entry) {
- var record = entry.completion || {};
- record.type = "normal", delete record.arg, entry.completion = record;
- }
- function Context(tryLocsList) {
- this.tryEntries = [{
- tryLoc: "root"
- }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);
- }
- function values(iterable) {
- if (iterable) {
- var iteratorMethod = iterable[iteratorSymbol];
- if (iteratorMethod) return iteratorMethod.call(iterable);
- if ("function" == typeof iterable.next) return iterable;
- if (!isNaN(iterable.length)) {
- var i = -1,
- next = function next() {
- for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;
- return next.value = undefined, next.done = !0, next;
- };
- return next.next = next;
- }
- }
- return {
- next: doneResult
- };
- }
- function doneResult() {
- return {
- value: undefined,
- done: !0
- };
- }
- return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) {
- var ctor = "function" == typeof genFun && genFun.constructor;
- return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name));
- }, exports.mark = function (genFun) {
- return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun;
- }, exports.awrap = function (arg) {
- return {
- __await: arg
- };
- }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {
- return this;
- }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {
- void 0 === PromiseImpl && (PromiseImpl = Promise);
- var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);
- return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {
- return result.done ? result.value : iter.next();
- });
- }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () {
- return this;
- }), define(Gp, "toString", function () {
- return "[object Generator]";
- }), exports.keys = function (object) {
- var keys = [];
- for (var key in object) keys.push(key);
- return keys.reverse(), function next() {
- for (; keys.length;) {
- var key = keys.pop();
- if (key in object) return next.value = key, next.done = !1, next;
- }
- return next.done = !0, next;
- };
- }, exports.values = values, Context.prototype = {
- constructor: Context,
- reset: function (skipTempReset) {
- if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);
- },
- stop: function () {
- this.done = !0;
- var rootRecord = this.tryEntries[0].completion;
- if ("throw" === rootRecord.type) throw rootRecord.arg;
- return this.rval;
- },
- dispatchException: function (exception) {
- if (this.done) throw exception;
- var context = this;
- function handle(loc, caught) {
- return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught;
- }
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
- var entry = this.tryEntries[i],
- record = entry.completion;
- if ("root" === entry.tryLoc) return handle("end");
- if (entry.tryLoc <= this.prev) {
- var hasCatch = hasOwn.call(entry, "catchLoc"),
- hasFinally = hasOwn.call(entry, "finallyLoc");
- if (hasCatch && hasFinally) {
- if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
- if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
- } else if (hasCatch) {
- if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
- } else {
- if (!hasFinally) throw new Error("try statement without catch or finally");
- if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
- }
- }
- }
- },
- abrupt: function (type, arg) {
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
- var entry = this.tryEntries[i];
- if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) {
- var finallyEntry = entry;
- break;
- }
- }
- finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);
- var record = finallyEntry ? finallyEntry.completion : {};
- return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);
- },
- complete: function (record, afterLoc) {
- if ("throw" === record.type) throw record.arg;
- return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;
- },
- finish: function (finallyLoc) {
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
- var entry = this.tryEntries[i];
- if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;
- }
- },
- catch: function (tryLoc) {
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
- var entry = this.tryEntries[i];
- if (entry.tryLoc === tryLoc) {
- var record = entry.completion;
- if ("throw" === record.type) {
- var thrown = record.arg;
- resetTryEntry(entry);
- }
- return thrown;
- }
- }
- throw new Error("illegal catch attempt");
- },
- delegateYield: function (iterable, resultName, nextLoc) {
- return this.delegate = {
- iterator: values(iterable),
- resultName: resultName,
- nextLoc: nextLoc
- }, "next" === this.method && (this.arg = undefined), ContinueSentinel;
- }
- }, exports;
- }
- function _typeof(obj) {
- "@babel/helpers - typeof";
-
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
- return typeof obj;
- } : function (obj) {
- return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
- }, _typeof(obj);
- }
- function _classCallCheck(instance, Constructor) {
- if (!(instance instanceof Constructor)) {
- throw new TypeError("Cannot call a class as a function");
- }
- }
- function _defineProperties(target, props) {
- for (var i = 0; i < props.length; i++) {
- var descriptor = props[i];
- descriptor.enumerable = descriptor.enumerable || false;
- descriptor.configurable = true;
- if ("value" in descriptor) descriptor.writable = true;
- Object.defineProperty(target, descriptor.key, descriptor);
- }
- }
- function _createClass(Constructor, protoProps, staticProps) {
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
- if (staticProps) _defineProperties(Constructor, staticProps);
- Object.defineProperty(Constructor, "prototype", {
- writable: false
- });
- return Constructor;
- }
- function _defineProperty(obj, key, value) {
- if (key in obj) {
- Object.defineProperty(obj, key, {
- value: value,
- enumerable: true,
- configurable: true,
- writable: true
- });
- } else {
- obj[key] = value;
- }
- return obj;
- }
- function _inherits(subClass, superClass) {
- if (typeof superClass !== "function" && superClass !== null) {
- throw new TypeError("Super expression must either be null or a function");
- }
- subClass.prototype = Object.create(superClass && superClass.prototype, {
- constructor: {
- value: subClass,
- writable: true,
- configurable: true
- }
- });
- Object.defineProperty(subClass, "prototype", {
- writable: false
- });
- if (superClass) _setPrototypeOf(subClass, superClass);
- }
- function _getPrototypeOf(o) {
- _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {
- return o.__proto__ || Object.getPrototypeOf(o);
- };
- return _getPrototypeOf(o);
- }
- function _setPrototypeOf(o, p) {
- _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
- o.__proto__ = p;
- return o;
- };
- return _setPrototypeOf(o, p);
- }
- 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;
- }
- }
- function _construct(Parent, args, Class) {
- if (_isNativeReflectConstruct()) {
- _construct = Reflect.construct.bind();
- } else {
- _construct = function _construct(Parent, args, Class) {
- var a = [null];
- a.push.apply(a, args);
- var Constructor = Function.bind.apply(Parent, a);
- var instance = new Constructor();
- if (Class) _setPrototypeOf(instance, Class.prototype);
- return instance;
- };
- }
- return _construct.apply(null, arguments);
- }
- function _isNativeFunction(fn) {
- return Function.toString.call(fn).indexOf("[native code]") !== -1;
- }
- function _wrapNativeSuper(Class) {
- var _cache = typeof Map === "function" ? new Map() : undefined;
- _wrapNativeSuper = function _wrapNativeSuper(Class) {
- if (Class === null || !_isNativeFunction(Class)) return Class;
- if (typeof Class !== "function") {
- throw new TypeError("Super expression must either be null or a function");
- }
- if (typeof _cache !== "undefined") {
- if (_cache.has(Class)) return _cache.get(Class);
- _cache.set(Class, Wrapper);
- }
- function Wrapper() {
- return _construct(Class, arguments, _getPrototypeOf(this).constructor);
- }
- Wrapper.prototype = Object.create(Class.prototype, {
- constructor: {
- value: Wrapper,
- enumerable: false,
- writable: true,
- configurable: true
- }
- });
- return _setPrototypeOf(Wrapper, Class);
- };
- return _wrapNativeSuper(Class);
- }
- function _assertThisInitialized(self) {
- if (self === void 0) {
- throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
- }
- return self;
- }
- function _possibleConstructorReturn(self, call) {
- if (call && (typeof call === "object" || typeof call === "function")) {
- return call;
- } else if (call !== void 0) {
- throw new TypeError("Derived constructors may only return object or undefined");
- }
- return _assertThisInitialized(self);
- }
- function _createSuper(Derived) {
- var hasNativeReflectConstruct = _isNativeReflectConstruct();
- return function _createSuperInternal() {
- var Super = _getPrototypeOf(Derived),
- result;
- if (hasNativeReflectConstruct) {
- var NewTarget = _getPrototypeOf(this).constructor;
- result = Reflect.construct(Super, arguments, NewTarget);
- } else {
- result = Super.apply(this, arguments);
- }
- return _possibleConstructorReturn(this, result);
- };
- }
- function _slicedToArray(arr, i) {
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
- }
- function _arrayWithHoles(arr) {
- if (Array.isArray(arr)) return arr;
- }
- function _iterableToArrayLimit(arr, i) {
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
- if (_i == null) return;
- var _arr = [];
- var _n = true;
- var _d = false;
- var _s, _e;
- try {
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
- _arr.push(_s.value);
- if (i && _arr.length === i) break;
- }
- } catch (err) {
- _d = true;
- _e = err;
- } finally {
- try {
- if (!_n && _i["return"] != null) _i["return"]();
- } finally {
- if (_d) throw _e;
- }
- }
- return _arr;
- }
- function _unsupportedIterableToArray(o, minLen) {
- if (!o) return;
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
- var n = Object.prototype.toString.call(o).slice(8, -1);
- if (n === "Object" && o.constructor) n = o.constructor.name;
- if (n === "Map" || n === "Set") return Array.from(o);
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
- }
- function _arrayLikeToArray(arr, len) {
- if (len == null || len > arr.length) len = arr.length;
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
- return arr2;
- }
- function _nonIterableRest() {
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
- }
- function _createForOfIteratorHelper(o, allowArrayLike) {
- var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
- if (!it) {
- if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
- if (it) o = it;
- var i = 0;
- var F = function () {};
- return {
- s: F,
- n: function () {
- if (i >= o.length) return {
- done: true
- };
- return {
- done: false,
- value: o[i++]
- };
- },
- e: function (e) {
- throw e;
- },
- f: F
- };
- }
- throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
- }
- var normalCompletion = true,
- didErr = false,
- err;
- return {
- s: function () {
- it = it.call(o);
- },
- n: function () {
- var step = it.next();
- normalCompletion = step.done;
- return step;
- },
- e: function (e) {
- didErr = true;
- err = e;
- },
- f: function () {
- try {
- if (!normalCompletion && it.return != null) it.return();
- } finally {
- if (didErr) throw err;
- }
- }
- };
- }
/******************************************************************************
Copyright (c) Microsoft Corporation.
@@ -684,7 +132,36 @@
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
+ /* global Reflect, Promise */
+ var extendStatics = function (d, b) {
+ extendStatics = Object.setPrototypeOf || {
+ __proto__: []
+ } instanceof Array && function (d, b) {
+ d.__proto__ = b;
+ } || function (d, b) {
+ for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
+ };
+ return extendStatics(d, b);
+ };
+ function __extends(d, b) {
+ if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+ extendStatics(d, b);
+ function __() {
+ this.constructor = d;
+ }
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+ }
+ var __assign = function () {
+ __assign = Object.assign || function __assign(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };
function __awaiter(thisArg, _arguments, P, generator) {
function adopt(value) {
return value instanceof P ? value : new P(function (resolve) {
@@ -712,16 +189,103 @@
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
}
- var MeiliSearchCommunicationError = /*#__PURE__*/function (_Error) {
- _inherits(MeiliSearchCommunicationError, _Error);
- var _super = _createSuper(MeiliSearchCommunicationError);
+ function __generator(thisArg, body) {
+ var _ = {
+ label: 0,
+ sent: function () {
+ if (t[0] & 1) throw t[1];
+ return t[1];
+ },
+ trys: [],
+ ops: []
+ },
+ f,
+ y,
+ t,
+ g;
+ return g = {
+ next: verb(0),
+ "throw": verb(1),
+ "return": verb(2)
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function () {
+ return this;
+ }), g;
+ function verb(n) {
+ return function (v) {
+ return step([n, v]);
+ };
+ }
+ function step(op) {
+ if (f) throw new TypeError("Generator is already executing.");
+ while (_) try {
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
+ if (y = 0, t) op = [op[0] & 2, t.value];
+ switch (op[0]) {
+ case 0:
+ case 1:
+ t = op;
+ break;
+ case 4:
+ _.label++;
+ return {
+ value: op[1],
+ done: false
+ };
+ case 5:
+ _.label++;
+ y = op[1];
+ op = [0];
+ continue;
+ case 7:
+ op = _.ops.pop();
+ _.trys.pop();
+ continue;
+ default:
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
+ _ = 0;
+ continue;
+ }
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
+ _.label = op[1];
+ break;
+ }
+ if (op[0] === 6 && _.label < t[1]) {
+ _.label = t[1];
+ t = op;
+ break;
+ }
+ if (t && _.label < t[2]) {
+ _.label = t[2];
+ _.ops.push(op);
+ break;
+ }
+ if (t[2]) _.ops.pop();
+ _.trys.pop();
+ continue;
+ }
+ op = body.call(thisArg, _);
+ } catch (e) {
+ op = [6, e];
+ y = 0;
+ } finally {
+ f = t = 0;
+ }
+ if (op[0] & 5) throw op[1];
+ return {
+ value: op[0] ? op[1] : void 0,
+ done: true
+ };
+ }
+ }
+ var MeiliSearchCommunicationError = /** @class */
+ function (_super) {
+ __extends(MeiliSearchCommunicationError, _super);
function MeiliSearchCommunicationError(message, body, url, stack) {
- var _this;
- _classCallCheck(this, MeiliSearchCommunicationError);
+ var _this = this;
var _a, _b, _c;
- _this = _super.call(this, message); // Make errors comparison possible. ex: error instanceof MeiliSearchCommunicationError.
+ _this = _super.call(this, message) || this; // Make errors comparison possible. ex: error instanceof MeiliSearchCommunicationError.
- Object.setPrototypeOf(_assertThisInitialized(_this), MeiliSearchCommunicationError.prototype);
+ Object.setPrototypeOf(_this, MeiliSearchCommunicationError.prototype);
_this.name = 'MeiliSearchCommunicationError';
if (body instanceof Response) {
_this.message = body.statusText;
@@ -738,22 +302,20 @@
_this.stack = (_c = _this.stack) === null || _c === void 0 ? void 0 : _c.replace('Not Found', "Not Found: ".concat(url));
} else {
if (Error.captureStackTrace) {
- Error.captureStackTrace(_assertThisInitialized(_this), MeiliSearchCommunicationError);
+ Error.captureStackTrace(_this, MeiliSearchCommunicationError);
}
}
return _this;
}
- return _createClass(MeiliSearchCommunicationError);
- }( /*#__PURE__*/_wrapNativeSuper(Error));
- var MeiliSearchApiError = /*#__PURE__*/function (_Error) {
- _inherits(MeiliSearchApiError, _Error);
- var _super = _createSuper(MeiliSearchApiError);
- function MeiliSearchApiError(error, status) {
- var _this;
- _classCallCheck(this, MeiliSearchApiError);
- _this = _super.call(this, error.message); // Make errors comparison possible. ex: error instanceof MeiliSearchApiError.
-
- Object.setPrototypeOf(_assertThisInitialized(_this), MeiliSearchApiError.prototype);
+ return MeiliSearchCommunicationError;
+ }(Error);
+ var MeiliSearchApiError = /** @class */
+ function (_super) {
+ __extends(class_1, _super);
+ function class_1(error, status) {
+ var _this = _super.call(this, error.message) || this; // Make errors comparison possible. ex: error instanceof MeiliSearchApiError.
+
+ Object.setPrototypeOf(_this, MeiliSearchApiError.prototype);
_this.name = 'MeiliSearchApiError';
_this.code = error.code;
_this.type = error.type;
@@ -761,43 +323,46 @@
_this.message = error.message;
_this.httpStatus = status;
if (Error.captureStackTrace) {
- Error.captureStackTrace(_assertThisInitialized(_this), MeiliSearchApiError);
+ Error.captureStackTrace(_this, MeiliSearchApiError);
}
return _this;
}
- return _createClass(MeiliSearchApiError);
- }( /*#__PURE__*/_wrapNativeSuper(Error));
+ return class_1;
+ }(Error);
function httpResponseErrorHandler(response) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
+ return __awaiter(this, void 0, void 0, function () {
var responseBody;
- return _regeneratorRuntime().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
case 0:
- if (response.ok) {
- _context.next = 11;
- break;
- }
- _context.prev = 1;
- _context.next = 4;
- return response.json();
- case 4:
- responseBody = _context.sent;
- _context.next = 10;
- break;
- case 7:
- _context.prev = 7;
- _context.t0 = _context["catch"](1);
+ if (!!response.ok) return [3
+ /*break*/, 5];
+ responseBody = void 0;
+ _a.label = 1;
+ case 1:
+ _a.trys.push([1, 3,, 4]);
+ return [4
+ /*yield*/, response.json()];
+ case 2:
+ // If it is not possible to parse the return body it means there is none
+ // In which case it is a communication error with the Meilisearch instance
+ responseBody = _a.sent();
+ return [3
+ /*break*/, 4];
+ case 3:
+ _a.sent(); // Not sure on how to test this part of the code.
+
throw new MeiliSearchCommunicationError(response.statusText, response, response.url);
- case 10:
+ case 4:
+ // If the body is parsable, then it means Meilisearch returned a body with
+ // information on the error.
throw new MeiliSearchApiError(responseBody, response.status);
- case 11:
- return _context.abrupt("return", response);
- case 12:
- case "end":
- return _context.stop();
+ case 5:
+ return [2
+ /*return*/, response];
}
- }, _callee, null, [[1, 7]]);
- }));
+ });
+ });
}
function httpErrorHandler(response, stack, url) {
if (response.name !== 'MeiliSearchApiError') {
@@ -805,72 +370,62 @@
}
throw response;
}
- var MeiliSearchError = /*#__PURE__*/function (_Error) {
- _inherits(MeiliSearchError, _Error);
- var _super = _createSuper(MeiliSearchError);
+ var MeiliSearchError = /** @class */
+ function (_super) {
+ __extends(MeiliSearchError, _super);
function MeiliSearchError(message) {
- var _this;
- _classCallCheck(this, MeiliSearchError);
- _this = _super.call(this, message); // Make errors comparison possible. ex: error instanceof MeiliSearchError.
+ var _this = _super.call(this, message) || this; // Make errors comparison possible. ex: error instanceof MeiliSearchError.
- Object.setPrototypeOf(_assertThisInitialized(_this), MeiliSearchError.prototype);
+ Object.setPrototypeOf(_this, MeiliSearchError.prototype);
_this.name = 'MeiliSearchError';
if (Error.captureStackTrace) {
- Error.captureStackTrace(_assertThisInitialized(_this), MeiliSearchError);
+ Error.captureStackTrace(_this, MeiliSearchError);
}
return _this;
}
- return _createClass(MeiliSearchError);
- }( /*#__PURE__*/_wrapNativeSuper(Error));
- var MeiliSearchTimeOutError = /*#__PURE__*/function (_Error) {
- _inherits(MeiliSearchTimeOutError, _Error);
- var _super = _createSuper(MeiliSearchTimeOutError);
+ return MeiliSearchError;
+ }(Error);
+ var MeiliSearchTimeOutError = /** @class */
+ function (_super) {
+ __extends(MeiliSearchTimeOutError, _super);
function MeiliSearchTimeOutError(message) {
- var _this;
- _classCallCheck(this, MeiliSearchTimeOutError);
- _this = _super.call(this, message); // Make errors comparison possible. ex: error instanceof MeiliSearchTimeOutError.
+ var _this = _super.call(this, message) || this; // Make errors comparison possible. ex: error instanceof MeiliSearchTimeOutError.
- Object.setPrototypeOf(_assertThisInitialized(_this), MeiliSearchTimeOutError.prototype);
+ Object.setPrototypeOf(_this, MeiliSearchTimeOutError.prototype);
_this.name = 'MeiliSearchTimeOutError';
if (Error.captureStackTrace) {
- Error.captureStackTrace(_assertThisInitialized(_this), MeiliSearchTimeOutError);
+ Error.captureStackTrace(_this, MeiliSearchTimeOutError);
}
return _this;
}
- return _createClass(MeiliSearchTimeOutError);
- }( /*#__PURE__*/_wrapNativeSuper(Error));
- function versionErrorHintMessage(message, method) {
- return "".concat(message, "\nHint: It might not be working because maybe you're not up to date with the Meilisearch version that ").concat(method, " call requires.");
- }
+ return MeiliSearchTimeOutError;
+ }(Error);
/** Removes undefined entries from object */
function removeUndefinedFromObject(obj) {
return Object.entries(obj).reduce(function (acc, curEntry) {
- var _curEntry = _slicedToArray(curEntry, 2),
- key = _curEntry[0],
- val = _curEntry[1];
+ var key = curEntry[0],
+ val = curEntry[1];
if (val !== undefined) acc[key] = val;
return acc;
}, {});
}
function sleep(ms) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
- return _regeneratorRuntime().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
case 0:
- _context.next = 2;
- return new Promise(function (resolve) {
+ return [4
+ /*yield*/, new Promise(function (resolve) {
return setTimeout(resolve, ms);
- });
- case 2:
- return _context.abrupt("return", _context.sent);
- case 3:
- case "end":
- return _context.stop();
+ })];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
}
- }, _callee);
- }));
+ });
+ });
}
function addProtocolIfNotPresent(host) {
if (!(host.startsWith('https://') || host.startsWith('http://'))) {
@@ -884,19 +439,20 @@
}
return url;
}
- var PACKAGE_VERSION = '0.35.0';
+ var PACKAGE_VERSION = '0.32.1';
function toQueryParams(parameters) {
var params = Object.keys(parameters);
var queryParams = params.reduce(function (acc, key) {
+ var _a, _b, _c;
var value = parameters[key];
if (value === undefined) {
return acc;
} else if (Array.isArray(value)) {
- return Object.assign(Object.assign({}, acc), _defineProperty({}, key, value.join(',')));
+ return __assign(__assign({}, acc), (_a = {}, _a[key] = value.join(','), _a));
} else if (value instanceof Date) {
- return Object.assign(Object.assign({}, acc), _defineProperty({}, key, value.toISOString()));
+ return __assign(__assign({}, acc), (_b = {}, _b[key] = value.toISOString(), _b));
}
- return Object.assign(Object.assign({}, acc), _defineProperty({}, key, value));
+ return __assign(__assign({}, acc), (_c = {}, _c[key] = value, _c));
}, {});
return queryParams;
}
@@ -916,11 +472,11 @@
return acc;
}, {});
} else if ('has' in headers) {
- var clonedHeaders = {};
+ var clonedHeaders_1 = {};
headers.forEach(function (value, key) {
- return clonedHeaders[key] = value;
+ return clonedHeaders_1[key] = value;
});
- return clonedHeaders;
+ return clonedHeaders_1;
} else {
return Object.assign({}, headers);
}
@@ -951,9 +507,9 @@
}
return headers;
}
- var HttpRequests = /*#__PURE__*/function () {
+ var HttpRequests = /** @class */
+ function () {
function HttpRequests(config) {
- _classCallCheck(this, HttpRequests);
this.headers = createHeaders(config);
this.requestConfig = config.requestConfig;
this.httpClient = config.httpClient;
@@ -964,458 +520,405 @@
throw new MeiliSearchError('The provided host is not valid.');
}
}
- _createClass(HttpRequests, [{
- key: "request",
- value: function request(_ref) {
- var method = _ref.method,
- url = _ref.url,
- params = _ref.params,
- body = _ref.body,
- _ref$config = _ref.config,
- config = _ref$config === void 0 ? {} : _ref$config;
- var _a;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
- var constructURL, queryParams, headers, fetchFn, result, response, parsedBody, stack;
- return _regeneratorRuntime().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
- case 0:
- constructURL = new URL(url, this.url);
- if (params) {
- queryParams = new URLSearchParams();
- Object.keys(params).filter(function (x) {
- return params[x] !== null;
- }).map(function (x) {
- return queryParams.set(x, params[x]);
- });
- constructURL.search = queryParams.toString();
- } // in case a custom content-type is provided
- // do not stringify body
-
- if (!((_a = config.headers) === null || _a === void 0 ? void 0 : _a['Content-Type'])) {
- body = JSON.stringify(body);
- }
- headers = Object.assign(Object.assign({}, this.headers), config.headers);
- _context.prev = 5;
- fetchFn = this.httpClient ? this.httpClient : fetch;
- result = fetchFn(constructURL.toString(), Object.assign(Object.assign(Object.assign({}, config), this.requestConfig), {
- method: method,
- body: body,
- headers: headers
- })); // When using a custom HTTP client, the response is returned to allow the user to parse/handle it as they see fit
-
- if (!this.httpClient) {
- _context.next = 12;
- break;
- }
- _context.next = 11;
- return result;
- case 11:
- return _context.abrupt("return", _context.sent);
- case 12:
- _context.next = 14;
- return result.then(function (res) {
- return httpResponseErrorHandler(res);
- });
- case 14:
- response = _context.sent;
- _context.next = 17;
- return response.json().catch(function () {
- return undefined;
- });
- case 17:
- parsedBody = _context.sent;
- return _context.abrupt("return", parsedBody);
- case 21:
- _context.prev = 21;
- _context.t0 = _context["catch"](5);
- stack = _context.t0.stack;
- httpErrorHandler(_context.t0, stack, constructURL.toString());
- case 25:
- case "end":
- return _context.stop();
- }
- }, _callee, this, [[5, 21]]);
- }));
- }
- }, {
- key: "get",
- value: function get(url, params, config) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
- while (1) switch (_context2.prev = _context2.next) {
- case 0:
- _context2.next = 2;
- return this.request({
- method: 'GET',
- url: url,
- params: params,
- config: config
- });
- case 2:
- return _context2.abrupt("return", _context2.sent);
- case 3:
- case "end":
- return _context2.stop();
- }
- }, _callee2, this);
- }));
- }
- }, {
- key: "post",
- value: function post(url, data, params, config) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
- while (1) switch (_context3.prev = _context3.next) {
- case 0:
- _context3.next = 2;
- return this.request({
- method: 'POST',
- url: url,
- body: data,
- params: params,
- config: config
- });
- case 2:
- return _context3.abrupt("return", _context3.sent);
- case 3:
- case "end":
- return _context3.stop();
- }
- }, _callee3, this);
- }));
- }
- }, {
- key: "put",
- value: function put(url, data, params, config) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
- return _regeneratorRuntime().wrap(function _callee4$(_context4) {
- while (1) switch (_context4.prev = _context4.next) {
- case 0:
- _context4.next = 2;
- return this.request({
- method: 'PUT',
- url: url,
- body: data,
- params: params,
- config: config
- });
- case 2:
- return _context4.abrupt("return", _context4.sent);
- case 3:
- case "end":
- return _context4.stop();
- }
- }, _callee4, this);
- }));
- }
- }, {
- key: "patch",
- value: function patch(url, data, params, config) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
- return _regeneratorRuntime().wrap(function _callee5$(_context5) {
- while (1) switch (_context5.prev = _context5.next) {
- case 0:
- _context5.next = 2;
- return this.request({
- method: 'PATCH',
- url: url,
- body: data,
- params: params,
- config: config
- });
- case 2:
- return _context5.abrupt("return", _context5.sent);
- case 3:
- case "end":
- return _context5.stop();
- }
- }, _callee5, this);
- }));
- }
- }, {
- key: "delete",
- value: function _delete(url, data, params, config) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
- return _regeneratorRuntime().wrap(function _callee6$(_context6) {
- while (1) switch (_context6.prev = _context6.next) {
- case 0:
- _context6.next = 2;
- return this.request({
- method: 'DELETE',
- url: url,
- body: data,
- params: params,
- config: config
+ HttpRequests.prototype.request = function (_a) {
+ var method = _a.method,
+ url = _a.url,
+ params = _a.params,
+ body = _a.body,
+ config = _a.config;
+ return __awaiter(this, void 0, void 0, function () {
+ var constructURL, queryParams_1, fetchFn, result, response, parsedBody, e_1, stack;
+ return __generator(this, function (_b) {
+ switch (_b.label) {
+ case 0:
+ constructURL = new URL(url, this.url);
+ if (params) {
+ queryParams_1 = new URLSearchParams();
+ Object.keys(params).filter(function (x) {
+ return params[x] !== null;
+ }).map(function (x) {
+ return queryParams_1.set(x, params[x]);
});
- case 2:
- return _context6.abrupt("return", _context6.sent);
- case 3:
- case "end":
- return _context6.stop();
- }
- }, _callee6, this);
- }));
- }
- }]);
- return HttpRequests;
- }();
- var EnqueuedTask = /*#__PURE__*/_createClass(function EnqueuedTask(task) {
- _classCallCheck(this, EnqueuedTask);
- this.taskUid = task.taskUid;
- this.indexUid = task.indexUid;
- this.status = task.status;
- this.type = task.type;
- this.enqueuedAt = new Date(task.enqueuedAt);
- });
- var Task = /*#__PURE__*/_createClass(function Task(task) {
- _classCallCheck(this, Task);
- this.indexUid = task.indexUid;
- this.status = task.status;
- this.type = task.type;
- this.uid = task.uid;
- this.details = task.details;
- this.canceledBy = task.canceledBy;
- this.error = task.error;
- this.duration = task.duration;
- this.startedAt = new Date(task.startedAt);
- this.enqueuedAt = new Date(task.enqueuedAt);
- this.finishedAt = new Date(task.finishedAt);
- });
- var TaskClient = /*#__PURE__*/function () {
- function TaskClient(config) {
- _classCallCheck(this, TaskClient);
- this.httpRequest = new HttpRequests(config);
- }
- /**
- * Get one task
- *
- * @param uid - Unique identifier of the task
- * @returns
- */
+ constructURL.search = queryParams_1.toString();
+ }
+ _b.label = 1;
+ case 1:
+ _b.trys.push([1, 6,, 7]);
+ fetchFn = this.httpClient ? this.httpClient : fetch;
+ result = fetchFn(constructURL.toString(), __assign(__assign(__assign({}, config), this.requestConfig), {
+ method: method,
+ body: JSON.stringify(body),
+ headers: this.headers
+ }));
+ if (!this.httpClient) return [3
+ /*break*/, 3];
+ return [4
+ /*yield*/, result];
+ case 2:
+ return [2
+ /*return*/, _b.sent()];
+ case 3:
+ return [4
+ /*yield*/, result.then(function (res) {
+ return httpResponseErrorHandler(res);
+ })];
+ case 4:
+ response = _b.sent();
+ return [4
+ /*yield*/, response.json()["catch"](function () {
+ return undefined;
+ })];
+ case 5:
+ parsedBody = _b.sent();
+ return [2
+ /*return*/, parsedBody];
+ case 6:
+ e_1 = _b.sent();
+ stack = e_1.stack;
+ httpErrorHandler(e_1, stack, constructURL.toString());
+ return [3
+ /*break*/, 7];
+ case 7:
+ return [2
+ /*return*/];
+ }
+ });
+ });
+ };
- _createClass(TaskClient, [{
- key: "getTask",
- value: function getTask(uid) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
- var url, taskItem;
- return _regeneratorRuntime().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
- case 0:
- url = "tasks/".concat(uid);
- _context.next = 3;
- return this.httpRequest.get(url);
- case 3:
- taskItem = _context.sent;
- return _context.abrupt("return", new Task(taskItem));
- case 5:
- case "end":
- return _context.stop();
- }
- }, _callee, this);
- }));
- }
- /**
- * Get tasks
- *
- * @param parameters - Parameters to browse the tasks
- * @returns Promise containing all tasks
- */
- }, {
- key: "getTasks",
- value: function getTasks() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
- var url, tasks;
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
- while (1) switch (_context2.prev = _context2.next) {
- case 0:
- url = "tasks";
- _context2.next = 3;
- return this.httpRequest.get(url, toQueryParams(parameters));
- case 3:
- tasks = _context2.sent;
- return _context2.abrupt("return", Object.assign(Object.assign({}, tasks), {
- results: tasks.results.map(function (task) {
- return new Task(task);
- })
- }));
- case 5:
- case "end":
- return _context2.stop();
- }
- }, _callee2, this);
- }));
- }
- /**
- * Wait for a task to be processed.
- *
- * @param taskUid - Task identifier
- * @param options - Additional configuration options
- * @returns Promise returning a task after it has been processed
- */
- }, {
- key: "waitForTask",
- value: function waitForTask(taskUid) {
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
- _ref$timeOutMs = _ref.timeOutMs,
- timeOutMs = _ref$timeOutMs === void 0 ? 5000 : _ref$timeOutMs,
- _ref$intervalMs = _ref.intervalMs,
- intervalMs = _ref$intervalMs === void 0 ? 50 : _ref$intervalMs;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
- var startingTime, response;
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
- while (1) switch (_context3.prev = _context3.next) {
- case 0:
- startingTime = Date.now();
- case 1:
- if (!(Date.now() - startingTime < timeOutMs)) {
- _context3.next = 11;
- break;
- }
- _context3.next = 4;
- return this.getTask(taskUid);
- case 4:
- response = _context3.sent;
- if (["enqueued"
- /* TaskStatus.TASK_ENQUEUED */, "processing"
- /* TaskStatus.TASK_PROCESSING */].includes(response.status)) {
- _context3.next = 7;
- break;
- }
- return _context3.abrupt("return", response);
- case 7:
- _context3.next = 9;
- return sleep(intervalMs);
- case 9:
- _context3.next = 1;
- break;
- case 11:
- throw new MeiliSearchTimeOutError("timeout of ".concat(timeOutMs, "ms has exceeded on process ").concat(taskUid, " when waiting a task to be resolved."));
- case 12:
- case "end":
- return _context3.stop();
- }
- }, _callee3, this);
- }));
- }
- /**
- * Waits for multiple tasks to be processed
- *
- * @param taskUids - Tasks identifier list
- * @param options - Wait options
- * @returns Promise returning a list of tasks after they have been processed
- */
- }, {
- key: "waitForTasks",
- value: function waitForTasks(taskUids) {
- var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
- _ref2$timeOutMs = _ref2.timeOutMs,
- timeOutMs = _ref2$timeOutMs === void 0 ? 5000 : _ref2$timeOutMs,
- _ref2$intervalMs = _ref2.intervalMs,
- intervalMs = _ref2$intervalMs === void 0 ? 50 : _ref2$intervalMs;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
- var tasks, _iterator, _step, taskUid, task;
- return _regeneratorRuntime().wrap(function _callee4$(_context4) {
- while (1) switch (_context4.prev = _context4.next) {
- case 0:
- tasks = [];
- _iterator = _createForOfIteratorHelper(taskUids);
- _context4.prev = 2;
- _iterator.s();
- case 4:
- if ((_step = _iterator.n()).done) {
- _context4.next = 12;
- break;
- }
- taskUid = _step.value;
- _context4.next = 8;
- return this.waitForTask(taskUid, {
- timeOutMs: timeOutMs,
- intervalMs: intervalMs
- });
- case 8:
- task = _context4.sent;
- tasks.push(task);
- case 10:
- _context4.next = 4;
- break;
- case 12:
- _context4.next = 17;
- break;
- case 14:
- _context4.prev = 14;
- _context4.t0 = _context4["catch"](2);
- _iterator.e(_context4.t0);
- case 17:
- _context4.prev = 17;
- _iterator.f();
- return _context4.finish(17);
- case 20:
- return _context4.abrupt("return", tasks);
- case 21:
- case "end":
- return _context4.stop();
- }
- }, _callee4, this, [[2, 14, 17, 20]]);
- }));
+ HttpRequests.prototype.get = function (url, params, config) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.request({
+ method: 'GET',
+ url: url,
+ params: params,
+ config: config
+ })];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ HttpRequests.prototype.post = function (url, data, params, config) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.request({
+ method: 'POST',
+ url: url,
+ body: data,
+ params: params,
+ config: config
+ })];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ HttpRequests.prototype.put = function (url, data, params, config) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.request({
+ method: 'PUT',
+ url: url,
+ body: data,
+ params: params,
+ config: config
+ })];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ HttpRequests.prototype.patch = function (url, data, params, config) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.request({
+ method: 'PATCH',
+ url: url,
+ body: data,
+ params: params,
+ config: config
+ })];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ HttpRequests.prototype["delete"] = function (url, data, params, config) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.request({
+ method: 'DELETE',
+ url: url,
+ body: data,
+ params: params,
+ config: config
+ })];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ return HttpRequests;
+ }();
+ var EnqueuedTask = /** @class */
+ function () {
+ function EnqueuedTask(task) {
+ this.taskUid = task.taskUid;
+ this.indexUid = task.indexUid;
+ this.status = task.status;
+ this.type = task.type;
+ this.enqueuedAt = new Date(task.enqueuedAt);
+ }
+ return EnqueuedTask;
+ }();
+ var Task = /** @class */
+ function () {
+ function Task(task) {
+ this.indexUid = task.indexUid;
+ this.status = task.status;
+ this.type = task.type;
+ this.uid = task.uid;
+ this.details = task.details;
+ this.canceledBy = task.canceledBy;
+ this.error = task.error;
+ this.duration = task.duration;
+ this.startedAt = new Date(task.startedAt);
+ this.enqueuedAt = new Date(task.enqueuedAt);
+ this.finishedAt = new Date(task.finishedAt);
+ }
+ return Task;
+ }();
+ var TaskClient = /** @class */
+ function () {
+ function TaskClient(config) {
+ this.httpRequest = new HttpRequests(config);
+ }
+ /**
+ * Get one task
+ *
+ * @param uid - Unique identifier of the task
+ * @returns
+ */
+
+ TaskClient.prototype.getTask = function (uid) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, taskItem;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "tasks/".concat(uid);
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ taskItem = _a.sent();
+ return [2
+ /*return*/, new Task(taskItem)];
+ }
+ });
+ });
+ };
+ /**
+ * Get tasks
+ *
+ * @param parameters - Parameters to browse the tasks
+ * @returns Promise containing all tasks
+ */
+
+ TaskClient.prototype.getTasks = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
}
- /**
- * Cancel a list of enqueued or processing tasks.
- *
- * @param parameters - Parameters to filter the tasks.
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "cancelTasks",
- value: function cancelTasks() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee5$(_context5) {
- while (1) switch (_context5.prev = _context5.next) {
- case 0:
- url = "tasks/cancel";
- _context5.next = 3;
- return this.httpRequest.post(url, {}, toQueryParams(parameters));
- case 3:
- task = _context5.sent;
- return _context5.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context5.stop();
- }
- }, _callee5, this);
- }));
+ return __awaiter(this, void 0, void 0, function () {
+ var url, tasks;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "tasks";
+ return [4
+ /*yield*/, this.httpRequest.get(url, toQueryParams(parameters))];
+ case 1:
+ tasks = _a.sent();
+ return [2
+ /*return*/, __assign(__assign({}, tasks), {
+ results: tasks.results.map(function (task) {
+ return new Task(task);
+ })
+ })];
+ }
+ });
+ });
+ };
+ /**
+ * Wait for a task to be processed.
+ *
+ * @param taskUid - Task identifier
+ * @param options - Additional configuration options
+ * @returns Promise returning a task after it has been processed
+ */
+
+ TaskClient.prototype.waitForTask = function (taskUid, _a) {
+ var _b = _a === void 0 ? {} : _a,
+ _c = _b.timeOutMs,
+ timeOutMs = _c === void 0 ? 5000 : _c,
+ _d = _b.intervalMs,
+ intervalMs = _d === void 0 ? 50 : _d;
+ return __awaiter(this, void 0, void 0, function () {
+ var startingTime, response;
+ return __generator(this, function (_e) {
+ switch (_e.label) {
+ case 0:
+ startingTime = Date.now();
+ _e.label = 1;
+ case 1:
+ if (!(Date.now() - startingTime < timeOutMs)) return [3
+ /*break*/, 4];
+ return [4
+ /*yield*/, this.getTask(taskUid)];
+ case 2:
+ response = _e.sent();
+ if (!["enqueued"
+ /* TaskStatus.TASK_ENQUEUED */, "processing"
+ /* TaskStatus.TASK_PROCESSING */].includes(response.status)) return [2
+ /*return*/, response];
+ return [4
+ /*yield*/, sleep(intervalMs)];
+ case 3:
+ _e.sent();
+ return [3
+ /*break*/, 1];
+ case 4:
+ throw new MeiliSearchTimeOutError("timeout of ".concat(timeOutMs, "ms has exceeded on process ").concat(taskUid, " when waiting a task to be resolved."));
+ }
+ });
+ });
+ };
+ /**
+ * Waits for multiple tasks to be processed
+ *
+ * @param taskUids - Tasks identifier list
+ * @param options - Wait options
+ * @returns Promise returning a list of tasks after they have been processed
+ */
+
+ TaskClient.prototype.waitForTasks = function (taskUids, _a) {
+ var _b = _a === void 0 ? {} : _a,
+ _c = _b.timeOutMs,
+ timeOutMs = _c === void 0 ? 5000 : _c,
+ _d = _b.intervalMs,
+ intervalMs = _d === void 0 ? 50 : _d;
+ return __awaiter(this, void 0, void 0, function () {
+ var tasks, _i, taskUids_1, taskUid, task;
+ return __generator(this, function (_e) {
+ switch (_e.label) {
+ case 0:
+ tasks = [];
+ _i = 0, taskUids_1 = taskUids;
+ _e.label = 1;
+ case 1:
+ if (!(_i < taskUids_1.length)) return [3
+ /*break*/, 4];
+ taskUid = taskUids_1[_i];
+ return [4
+ /*yield*/, this.waitForTask(taskUid, {
+ timeOutMs: timeOutMs,
+ intervalMs: intervalMs
+ })];
+ case 2:
+ task = _e.sent();
+ tasks.push(task);
+ _e.label = 3;
+ case 3:
+ _i++;
+ return [3
+ /*break*/, 1];
+ case 4:
+ return [2
+ /*return*/, tasks];
+ }
+ });
+ });
+ };
+ /**
+ * Cancel a list of enqueued or processing tasks.
+ *
+ * @param parameters - Parameters to filter the tasks.
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ TaskClient.prototype.cancelTasks = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
}
- /**
- * Delete a list tasks.
- *
- * @param parameters - Parameters to filter the tasks.
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "deleteTasks",
- value: function deleteTasks() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee6$(_context6) {
- while (1) switch (_context6.prev = _context6.next) {
- case 0:
- url = "tasks";
- _context6.next = 3;
- return this.httpRequest.delete(url, {}, toQueryParams(parameters));
- case 3:
- task = _context6.sent;
- return _context6.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context6.stop();
- }
- }, _callee6, this);
- }));
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "tasks/cancel";
+ return [4
+ /*yield*/, this.httpRequest.post(url, {}, toQueryParams(parameters))];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Delete a list tasks.
+ *
+ * @param parameters - Parameters to filter the tasks.
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ TaskClient.prototype.deleteTasks = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
}
- }]);
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "tasks";
+ return [4
+ /*yield*/, this.httpRequest["delete"](url, {}, toQueryParams(parameters))];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
return TaskClient;
}();
@@ -1426,14 +929,14 @@
* Copyright: 2019, MeiliSearch
*/
- var Index = /*#__PURE__*/function () {
+ var Index = /** @class */
+ function () {
/**
* @param config - Request configuration options
* @param uid - UID of the index
* @param primaryKey - Primary Key of the index
*/
function Index(config, uid, primaryKey) {
- _classCallCheck(this, Index);
this.uid = uid;
this.primaryKey = primaryKey;
this.httpRequest = new HttpRequests(config);
@@ -1451,2063 +954,1509 @@
* @returns Promise containing the search response
*/
- _createClass(Index, [{
- key: "search",
- value: function search(query, options, config) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
- var url;
- return _regeneratorRuntime().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/search");
- _context.next = 3;
- return this.httpRequest.post(url, removeUndefinedFromObject(Object.assign({
- q: query
- }, options)), undefined, config);
- case 3:
- return _context.abrupt("return", _context.sent);
- case 4:
- case "end":
- return _context.stop();
- }
- }, _callee, this);
- }));
- }
- /**
- * Search for documents into an index using the GET method
- *
- * @param query - Query string
- * @param options - Search options
- * @param config - Additional request configuration options
- * @returns Promise containing the search response
- */
- }, {
- key: "searchGet",
- value: function searchGet(query, options, config) {
- var _a, _b, _c, _d, _e, _f, _g;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
- var url, parseFilter, getParams;
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
- while (1) switch (_context2.prev = _context2.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/search");
- parseFilter = function parseFilter(filter) {
- if (typeof filter === 'string') return filter;else if (Array.isArray(filter)) throw new MeiliSearchError('The filter query parameter should be in string format when using searchGet');else return undefined;
- };
- getParams = Object.assign(Object.assign({
- q: query
- }, options), {
- filter: parseFilter(options === null || options === void 0 ? void 0 : options.filter),
- sort: (_a = options === null || options === void 0 ? void 0 : options.sort) === null || _a === void 0 ? void 0 : _a.join(','),
- facets: (_b = options === null || options === void 0 ? void 0 : options.facets) === null || _b === void 0 ? void 0 : _b.join(','),
- attributesToRetrieve: (_c = options === null || options === void 0 ? void 0 : options.attributesToRetrieve) === null || _c === void 0 ? void 0 : _c.join(','),
- attributesToCrop: (_d = options === null || options === void 0 ? void 0 : options.attributesToCrop) === null || _d === void 0 ? void 0 : _d.join(','),
- attributesToHighlight: (_e = options === null || options === void 0 ? void 0 : options.attributesToHighlight) === null || _e === void 0 ? void 0 : _e.join(','),
- vector: (_f = options === null || options === void 0 ? void 0 : options.vector) === null || _f === void 0 ? void 0 : _f.join(','),
- attributesToSearchOn: (_g = options === null || options === void 0 ? void 0 : options.attributesToSearchOn) === null || _g === void 0 ? void 0 : _g.join(',')
- });
- _context2.next = 5;
- return this.httpRequest.get(url, removeUndefinedFromObject(getParams), config);
- case 5:
- return _context2.abrupt("return", _context2.sent);
- case 6:
- case "end":
- return _context2.stop();
- }
- }, _callee2, this);
- }));
- }
- /**
- * Search for facet values
- *
- * @param params - Parameters used to search on the facets
- * @param config - Additional request configuration options
- * @returns Promise containing the search response
- */
- }, {
- key: "searchForFacetValues",
- value: function searchForFacetValues(params, config) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
- var url;
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
- while (1) switch (_context3.prev = _context3.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/facet-search");
- _context3.next = 3;
- return this.httpRequest.post(url, removeUndefinedFromObject(params), undefined, config);
- case 3:
- return _context3.abrupt("return", _context3.sent);
- case 4:
- case "end":
- return _context3.stop();
- }
- }, _callee3, this);
- }));
- } ///
- /// INDEX
- ///
+ Index.prototype.search = function (query, options, config) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/search");
+ return [4
+ /*yield*/, this.httpRequest.post(url, removeUndefinedFromObject(__assign({
+ q: query
+ }, options)), undefined, config)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Search for documents into an index using the GET method
+ *
+ * @param query - Query string
+ * @param options - Search options
+ * @param config - Additional request configuration options
+ * @returns Promise containing the search response
+ */
- /**
- * Get index information.
- *
- * @returns Promise containing index information
- */
- }, {
- key: "getRawInfo",
- value: function getRawInfo() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
- var url, res;
- return _regeneratorRuntime().wrap(function _callee4$(_context4) {
- while (1) switch (_context4.prev = _context4.next) {
- case 0:
- url = "indexes/".concat(this.uid);
- _context4.next = 3;
- return this.httpRequest.get(url);
- case 3:
- res = _context4.sent;
- this.primaryKey = res.primaryKey;
- this.updatedAt = new Date(res.updatedAt);
- this.createdAt = new Date(res.createdAt);
- return _context4.abrupt("return", res);
- case 8:
- case "end":
- return _context4.stop();
- }
- }, _callee4, this);
- }));
- }
- /**
- * Fetch and update Index information.
- *
- * @returns Promise to the current Index object with updated information
- */
- }, {
- key: "fetchInfo",
- value: function fetchInfo() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
- return _regeneratorRuntime().wrap(function _callee5$(_context5) {
- while (1) switch (_context5.prev = _context5.next) {
- case 0:
- _context5.next = 2;
- return this.getRawInfo();
- case 2:
- return _context5.abrupt("return", this);
- case 3:
- case "end":
- return _context5.stop();
- }
- }, _callee5, this);
- }));
- }
- /**
- * Get Primary Key.
- *
- * @returns Promise containing the Primary Key of the index
- */
- }, {
- key: "fetchPrimaryKey",
- value: function fetchPrimaryKey() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
- return _regeneratorRuntime().wrap(function _callee6$(_context6) {
- while (1) switch (_context6.prev = _context6.next) {
- case 0:
- _context6.next = 2;
- return this.getRawInfo();
- case 2:
- this.primaryKey = _context6.sent.primaryKey;
- return _context6.abrupt("return", this.primaryKey);
- case 4:
- case "end":
- return _context6.stop();
- }
- }, _callee6, this);
- }));
- }
- /**
- * Create an index.
- *
- * @param uid - Unique identifier of the Index
- * @param options - Index options
- * @param config - Request configuration options
- * @returns Newly created Index object
- */
- }, {
- key: "update",
- value:
- /**
- * Update an index.
- *
- * @param data - Data to update
- * @returns Promise to the current Index object with updated information
- */
- function update(data) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee7$(_context7) {
- while (1) switch (_context7.prev = _context7.next) {
- case 0:
- url = "indexes/".concat(this.uid);
- _context7.next = 3;
- return this.httpRequest.patch(url, data);
- case 3:
- task = _context7.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context7.abrupt("return", task);
- case 6:
- case "end":
- return _context7.stop();
- }
- }, _callee7, this);
- }));
- }
- /**
- * Delete an index.
- *
- * @returns Promise which resolves when index is deleted successfully
- */
- }, {
- key: "delete",
- value: function _delete() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee8$(_context8) {
- while (1) switch (_context8.prev = _context8.next) {
- case 0:
- url = "indexes/".concat(this.uid);
- _context8.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context8.sent;
- return _context8.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context8.stop();
- }
- }, _callee8, this);
- }));
- } ///
- /// TASKS
- ///
+ Index.prototype.searchGet = function (query, options, config) {
+ var _a, _b, _c, _d, _e;
+ return __awaiter(this, void 0, void 0, function () {
+ var url, parseFilter, getParams;
+ return __generator(this, function (_f) {
+ switch (_f.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/search");
+ parseFilter = function parseFilter(filter) {
+ if (typeof filter === 'string') return filter;else if (Array.isArray(filter)) throw new MeiliSearchError('The filter query parameter should be in string format when using searchGet');else return undefined;
+ };
+ getParams = __assign(__assign({
+ q: query
+ }, options), {
+ filter: parseFilter(options === null || options === void 0 ? void 0 : options.filter),
+ sort: (_a = options === null || options === void 0 ? void 0 : options.sort) === null || _a === void 0 ? void 0 : _a.join(','),
+ facets: (_b = options === null || options === void 0 ? void 0 : options.facets) === null || _b === void 0 ? void 0 : _b.join(','),
+ attributesToRetrieve: (_c = options === null || options === void 0 ? void 0 : options.attributesToRetrieve) === null || _c === void 0 ? void 0 : _c.join(','),
+ attributesToCrop: (_d = options === null || options === void 0 ? void 0 : options.attributesToCrop) === null || _d === void 0 ? void 0 : _d.join(','),
+ attributesToHighlight: (_e = options === null || options === void 0 ? void 0 : options.attributesToHighlight) === null || _e === void 0 ? void 0 : _e.join(',')
+ });
+ return [4
+ /*yield*/, this.httpRequest.get(url, removeUndefinedFromObject(getParams), config)];
+ case 1:
+ return [2
+ /*return*/, _f.sent()];
+ }
+ });
+ });
+ }; ///
+ /// INDEX
+ ///
- /**
- * Get the list of all the tasks of the index.
- *
- * @param parameters - Parameters to browse the tasks
- * @returns Promise containing all tasks
- */
- }, {
- key: "getTasks",
- value: function getTasks() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {
- return _regeneratorRuntime().wrap(function _callee9$(_context9) {
- while (1) switch (_context9.prev = _context9.next) {
- case 0:
- _context9.next = 2;
- return this.tasks.getTasks(Object.assign(Object.assign({}, parameters), {
- indexUids: [this.uid]
- }));
- case 2:
- return _context9.abrupt("return", _context9.sent);
- case 3:
- case "end":
- return _context9.stop();
- }
- }, _callee9, this);
- }));
- }
- /**
- * Get one task of the index.
- *
- * @param taskUid - Task identifier
- * @returns Promise containing a task
- */
- }, {
- key: "getTask",
- value: function getTask(taskUid) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {
- return _regeneratorRuntime().wrap(function _callee10$(_context10) {
- while (1) switch (_context10.prev = _context10.next) {
- case 0:
- _context10.next = 2;
- return this.tasks.getTask(taskUid);
- case 2:
- return _context10.abrupt("return", _context10.sent);
- case 3:
- case "end":
- return _context10.stop();
- }
- }, _callee10, this);
- }));
- }
- /**
- * Wait for multiple tasks to be processed.
- *
- * @param taskUids - Tasks identifier
- * @param waitOptions - Options on timeout and interval
- * @returns Promise containing an array of tasks
- */
- }, {
- key: "waitForTasks",
- value: function waitForTasks(taskUids) {
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
- _ref$timeOutMs = _ref.timeOutMs,
- timeOutMs = _ref$timeOutMs === void 0 ? 5000 : _ref$timeOutMs,
- _ref$intervalMs = _ref.intervalMs,
- intervalMs = _ref$intervalMs === void 0 ? 50 : _ref$intervalMs;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
- return _regeneratorRuntime().wrap(function _callee11$(_context11) {
- while (1) switch (_context11.prev = _context11.next) {
- case 0:
- _context11.next = 2;
- return this.tasks.waitForTasks(taskUids, {
- timeOutMs: timeOutMs,
- intervalMs: intervalMs
- });
- case 2:
- return _context11.abrupt("return", _context11.sent);
- case 3:
- case "end":
- return _context11.stop();
- }
- }, _callee11, this);
- }));
- }
- /**
- * Wait for a task to be processed.
- *
- * @param taskUid - Task identifier
- * @param waitOptions - Options on timeout and interval
- * @returns Promise containing an array of tasks
- */
- }, {
- key: "waitForTask",
- value: function waitForTask(taskUid) {
- var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
- _ref2$timeOutMs = _ref2.timeOutMs,
- timeOutMs = _ref2$timeOutMs === void 0 ? 5000 : _ref2$timeOutMs,
- _ref2$intervalMs = _ref2.intervalMs,
- intervalMs = _ref2$intervalMs === void 0 ? 50 : _ref2$intervalMs;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee12() {
- return _regeneratorRuntime().wrap(function _callee12$(_context12) {
- while (1) switch (_context12.prev = _context12.next) {
- case 0:
- _context12.next = 2;
- return this.tasks.waitForTask(taskUid, {
- timeOutMs: timeOutMs,
- intervalMs: intervalMs
- });
- case 2:
- return _context12.abrupt("return", _context12.sent);
- case 3:
- case "end":
- return _context12.stop();
- }
- }, _callee12, this);
- }));
- } ///
- /// STATS
- ///
+ /**
+ * Get index information.
+ *
+ * @returns Promise containing index information
+ */
- /**
- * Get stats of an index
- *
- * @returns Promise containing object with stats of the index
- */
- }, {
- key: "getStats",
- value: function getStats() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee13() {
- var url;
- return _regeneratorRuntime().wrap(function _callee13$(_context13) {
- while (1) switch (_context13.prev = _context13.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/stats");
- _context13.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context13.abrupt("return", _context13.sent);
- case 4:
- case "end":
- return _context13.stop();
- }
- }, _callee13, this);
- }));
- } ///
- /// DOCUMENTS
- ///
+ Index.prototype.getRawInfo = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, res;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid);
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ res = _a.sent();
+ this.primaryKey = res.primaryKey;
+ this.updatedAt = new Date(res.updatedAt);
+ this.createdAt = new Date(res.createdAt);
+ return [2
+ /*return*/, res];
+ }
+ });
+ });
+ };
+ /**
+ * Fetch and update Index information.
+ *
+ * @returns Promise to the current Index object with updated information
+ */
- /**
- * Get documents of an index.
- *
- * @param parameters - Parameters to browse the documents. Parameters can
- * contain the `filter` field only available in Meilisearch v1.2 and newer
- * @returns Promise containing the returned documents
- */
- }, {
- key: "getDocuments",
- value: function getDocuments() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ Index.prototype.fetchInfo = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.getRawInfo()];
+ case 1:
+ _a.sent();
+ return [2
+ /*return*/, this];
+ }
+ });
+ });
+ };
+ /**
+ * Get Primary Key.
+ *
+ * @returns Promise containing the Primary Key of the index
+ */
+
+ Index.prototype.fetchPrimaryKey = function () {
+ return __awaiter(this, void 0, void 0, function () {
var _a;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee14() {
- var url, _url, fields;
- return _regeneratorRuntime().wrap(function _callee14$(_context14) {
- while (1) switch (_context14.prev = _context14.next) {
- case 0:
- parameters = removeUndefinedFromObject(parameters); // In case `filter` is provided, use `POST /documents/fetch`
+ return __generator(this, function (_b) {
+ switch (_b.label) {
+ case 0:
+ _a = this;
+ return [4
+ /*yield*/, this.getRawInfo()];
+ case 1:
+ _a.primaryKey = _b.sent().primaryKey;
+ return [2
+ /*return*/, this.primaryKey];
+ }
+ });
+ });
+ };
+ /**
+ * Create an index.
+ *
+ * @param uid - Unique identifier of the Index
+ * @param options - Index options
+ * @param config - Request configuration options
+ * @returns Newly created Index object
+ */
- if (!(parameters.filter !== undefined)) {
- _context14.next = 15;
- break;
- }
- _context14.prev = 2;
- url = "indexes/".concat(this.uid, "/documents/fetch");
- _context14.next = 6;
- return this.httpRequest.post(url, parameters);
- case 6:
- return _context14.abrupt("return", _context14.sent);
- case 9:
- _context14.prev = 9;
- _context14.t0 = _context14["catch"](2);
- if (_context14.t0 instanceof MeiliSearchCommunicationError) {
- _context14.t0.message = versionErrorHintMessage(_context14.t0.message, 'getDocuments');
- } else if (_context14.t0 instanceof MeiliSearchApiError) {
- _context14.t0.message = versionErrorHintMessage(_context14.t0.message, 'getDocuments');
- }
- throw _context14.t0;
- case 13:
- _context14.next = 20;
- break;
- case 15:
- _url = "indexes/".concat(this.uid, "/documents"); // Transform fields to query parameter string format
-
- fields = Array.isArray(parameters === null || parameters === void 0 ? void 0 : parameters.fields) ? {
- fields: (_a = parameters === null || parameters === void 0 ? void 0 : parameters.fields) === null || _a === void 0 ? void 0 : _a.join(',')
- } : {};
- _context14.next = 19;
- return this.httpRequest.get(_url, Object.assign(Object.assign({}, parameters), fields));
- case 19:
- return _context14.abrupt("return", _context14.sent);
- case 20:
- case "end":
- return _context14.stop();
- }
- }, _callee14, this, [[2, 9]]);
- }));
- }
- /**
- * Get one document
- *
- * @param documentId - Document ID
- * @param parameters - Parameters applied on a document
- * @returns Promise containing Document response
- */
- }, {
- key: "getDocument",
- value: function getDocument(documentId, parameters) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee15() {
- var url, fields;
- return _regeneratorRuntime().wrap(function _callee15$(_context15) {
- while (1) switch (_context15.prev = _context15.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/documents/").concat(documentId);
- fields = function () {
- var _a;
- if (Array.isArray(parameters === null || parameters === void 0 ? void 0 : parameters.fields)) {
- return (_a = parameters === null || parameters === void 0 ? void 0 : parameters.fields) === null || _a === void 0 ? void 0 : _a.join(',');
- }
- return undefined;
- }();
- _context15.next = 4;
- return this.httpRequest.get(url, removeUndefinedFromObject(Object.assign(Object.assign({}, parameters), {
- fields: fields
- })));
- case 4:
- return _context15.abrupt("return", _context15.sent);
- case 5:
- case "end":
- return _context15.stop();
- }
- }, _callee15, this);
- }));
- }
- /**
- * Add or replace multiples documents to an index
- *
- * @param documents - Array of Document objects to add/replace
- * @param options - Options on document addition
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "addDocuments",
- value: function addDocuments(documents, options) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee16() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee16$(_context16) {
- while (1) switch (_context16.prev = _context16.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/documents");
- _context16.next = 3;
- return this.httpRequest.post(url, documents, options);
- case 3:
- task = _context16.sent;
- return _context16.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context16.stop();
- }
- }, _callee16, this);
- }));
- }
- /**
- * Add or replace multiples documents in a string format to an index. It only
- * supports csv, ndjson and json formats.
- *
- * @param documents - Documents provided in a string to add/replace
- * @param contentType - Content type of your document:
- * 'text/csv'|'application/x-ndjson'|'application/json'
- * @param options - Options on document addition
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "addDocumentsFromString",
- value: function addDocumentsFromString(documents, contentType, queryParams) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee17() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee17$(_context17) {
- while (1) switch (_context17.prev = _context17.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/documents");
- _context17.next = 3;
- return this.httpRequest.post(url, documents, queryParams, {
- headers: {
- 'Content-Type': contentType
- }
- });
- case 3:
- task = _context17.sent;
- return _context17.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context17.stop();
- }
- }, _callee17, this);
- }));
+ Index.create = function (uid, options, config) {
+ if (options === void 0) {
+ options = {};
}
- /**
- * Add or replace multiples documents to an index in batches
- *
- * @param documents - Array of Document objects to add/replace
- * @param batchSize - Size of the batch
- * @param options - Options on document addition
- * @returns Promise containing array of enqueued task objects for each batch
- */
- }, {
- key: "addDocumentsInBatches",
- value: function addDocumentsInBatches(documents) {
- var batchSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1000;
- var options = arguments.length > 2 ? arguments[2] : undefined;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee18() {
- var updates, i;
- return _regeneratorRuntime().wrap(function _callee18$(_context18) {
- while (1) switch (_context18.prev = _context18.next) {
- case 0:
- updates = [];
- i = 0;
- case 2:
- if (!(i < documents.length)) {
- _context18.next = 11;
- break;
- }
- _context18.t0 = updates;
- _context18.next = 6;
- return this.addDocuments(documents.slice(i, i + batchSize), options);
- case 6:
- _context18.t1 = _context18.sent;
- _context18.t0.push.call(_context18.t0, _context18.t1);
- case 8:
- i += batchSize;
- _context18.next = 2;
- break;
- case 11:
- return _context18.abrupt("return", updates);
- case 12:
- case "end":
- return _context18.stop();
- }
- }, _callee18, this);
- }));
- }
- /**
- * Add or update multiples documents to an index
- *
- * @param documents - Array of Document objects to add/update
- * @param options - Options on document update
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateDocuments",
- value: function updateDocuments(documents, options) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee19() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee19$(_context19) {
- while (1) switch (_context19.prev = _context19.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/documents");
- _context19.next = 3;
- return this.httpRequest.put(url, documents, options);
- case 3:
- task = _context19.sent;
- return _context19.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context19.stop();
- }
- }, _callee19, this);
- }));
- }
- /**
- * Add or update multiples documents to an index in batches
- *
- * @param documents - Array of Document objects to add/update
- * @param batchSize - Size of the batch
- * @param options - Options on document update
- * @returns Promise containing array of enqueued task objects for each batch
- */
- }, {
- key: "updateDocumentsInBatches",
- value: function updateDocumentsInBatches(documents) {
- var batchSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1000;
- var options = arguments.length > 2 ? arguments[2] : undefined;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee20() {
- var updates, i;
- return _regeneratorRuntime().wrap(function _callee20$(_context20) {
- while (1) switch (_context20.prev = _context20.next) {
- case 0:
- updates = [];
- i = 0;
- case 2:
- if (!(i < documents.length)) {
- _context20.next = 11;
- break;
- }
- _context20.t0 = updates;
- _context20.next = 6;
- return this.updateDocuments(documents.slice(i, i + batchSize), options);
- case 6:
- _context20.t1 = _context20.sent;
- _context20.t0.push.call(_context20.t0, _context20.t1);
- case 8:
- i += batchSize;
- _context20.next = 2;
- break;
- case 11:
- return _context20.abrupt("return", updates);
- case 12:
- case "end":
- return _context20.stop();
- }
- }, _callee20, this);
- }));
- }
- /**
- * Add or update multiples documents in a string format to an index. It only
- * supports csv, ndjson and json formats.
- *
- * @param documents - Documents provided in a string to add/update
- * @param contentType - Content type of your document:
- * 'text/csv'|'application/x-ndjson'|'application/json'
- * @param queryParams - Options on raw document addition
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateDocumentsFromString",
- value: function updateDocumentsFromString(documents, contentType, queryParams) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee21() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee21$(_context21) {
- while (1) switch (_context21.prev = _context21.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/documents");
- _context21.next = 3;
- return this.httpRequest.put(url, documents, queryParams, {
- headers: {
- 'Content-Type': contentType
- }
- });
- case 3:
- task = _context21.sent;
- return _context21.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context21.stop();
- }
- }, _callee21, this);
- }));
- }
- /**
- * Delete one document
- *
- * @param documentId - Id of Document to delete
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "deleteDocument",
- value: function deleteDocument(documentId) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee22() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee22$(_context22) {
- while (1) switch (_context22.prev = _context22.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/documents/").concat(documentId);
- _context22.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context22.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context22.abrupt("return", task);
- case 6:
- case "end":
- return _context22.stop();
- }
- }, _callee22, this);
- }));
- }
- /**
- * Delete multiples documents of an index.
- *
- * @param params - Params value can be:
- *
- * - DocumentsDeletionQuery: An object containing the parameters to customize
- * your document deletion. Only available in Meilisearch v1.2 and newer
- * - DocumentsIds: An array of document ids to delete
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "deleteDocuments",
- value: function deleteDocuments(params) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee23() {
- var isDocumentsDeletionQuery, endpoint, url, task;
- return _regeneratorRuntime().wrap(function _callee23$(_context23) {
- while (1) switch (_context23.prev = _context23.next) {
- case 0:
- // If params is of type DocumentsDeletionQuery
- isDocumentsDeletionQuery = !Array.isArray(params) && _typeof(params) === 'object';
- endpoint = isDocumentsDeletionQuery ? 'documents/delete' : 'documents/delete-batch';
- url = "indexes/".concat(this.uid, "/").concat(endpoint);
- _context23.prev = 3;
- _context23.next = 6;
- return this.httpRequest.post(url, params);
- case 6:
- task = _context23.sent;
- return _context23.abrupt("return", new EnqueuedTask(task));
- case 10:
- _context23.prev = 10;
- _context23.t0 = _context23["catch"](3);
- if (_context23.t0 instanceof MeiliSearchCommunicationError && isDocumentsDeletionQuery) {
- _context23.t0.message = versionErrorHintMessage(_context23.t0.message, 'deleteDocuments');
- } else if (_context23.t0 instanceof MeiliSearchApiError) {
- _context23.t0.message = versionErrorHintMessage(_context23.t0.message, 'deleteDocuments');
- }
- throw _context23.t0;
- case 14:
- case "end":
- return _context23.stop();
- }
- }, _callee23, this, [[3, 10]]);
- }));
- }
- /**
- * Delete all documents of an index
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "deleteAllDocuments",
- value: function deleteAllDocuments() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee24() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee24$(_context24) {
- while (1) switch (_context24.prev = _context24.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/documents");
- _context24.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context24.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context24.abrupt("return", task);
- case 6:
- case "end":
- return _context24.stop();
- }
- }, _callee24, this);
- }));
- } ///
- /// SETTINGS
- ///
+ return __awaiter(this, void 0, void 0, function () {
+ var url, req, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes";
+ req = new HttpRequests(config);
+ return [4
+ /*yield*/, req.post(url, __assign(__assign({}, options), {
+ uid: uid
+ }))];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Update an index.
+ *
+ * @param data - Data to update
+ * @returns Promise to the current Index object with updated information
+ */
- /**
- * Retrieve all settings
- *
- * @returns Promise containing Settings object
- */
- }, {
- key: "getSettings",
- value: function getSettings() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee25() {
- var url;
- return _regeneratorRuntime().wrap(function _callee25$(_context25) {
- while (1) switch (_context25.prev = _context25.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings");
- _context25.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context25.abrupt("return", _context25.sent);
- case 4:
- case "end":
- return _context25.stop();
- }
- }, _callee25, this);
- }));
- }
- /**
- * Update all settings Any parameters not provided will be left unchanged.
- *
- * @param settings - Object containing parameters with their updated values
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateSettings",
- value: function updateSettings(settings) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee26() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee26$(_context26) {
- while (1) switch (_context26.prev = _context26.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings");
- _context26.next = 3;
- return this.httpRequest.patch(url, settings);
- case 3:
- task = _context26.sent;
- task.enqueued = new Date(task.enqueuedAt);
- return _context26.abrupt("return", task);
- case 6:
- case "end":
- return _context26.stop();
- }
- }, _callee26, this);
- }));
- }
- /**
- * Reset settings.
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetSettings",
- value: function resetSettings() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee27() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee27$(_context27) {
- while (1) switch (_context27.prev = _context27.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings");
- _context27.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context27.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context27.abrupt("return", task);
- case 6:
- case "end":
- return _context27.stop();
- }
- }, _callee27, this);
- }));
- } ///
- /// PAGINATION SETTINGS
- ///
+ Index.prototype.update = function (data) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid);
+ return [4
+ /*yield*/, this.httpRequest.patch(url, data)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ };
+ /**
+ * Delete an index.
+ *
+ * @returns Promise which resolves when index is deleted successfully
+ */
- /**
- * Get the pagination settings.
- *
- * @returns Promise containing object of pagination settings
- */
- }, {
- key: "getPagination",
- value: function getPagination() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee28() {
- var url;
- return _regeneratorRuntime().wrap(function _callee28$(_context28) {
- while (1) switch (_context28.prev = _context28.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/pagination");
- _context28.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context28.abrupt("return", _context28.sent);
- case 4:
- case "end":
- return _context28.stop();
- }
- }, _callee28, this);
- }));
- }
- /**
- * Update the pagination settings.
- *
- * @param pagination - Pagination object
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updatePagination",
- value: function updatePagination(pagination) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee29() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee29$(_context29) {
- while (1) switch (_context29.prev = _context29.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/pagination");
- _context29.next = 3;
- return this.httpRequest.patch(url, pagination);
- case 3:
- task = _context29.sent;
- return _context29.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context29.stop();
- }
- }, _callee29, this);
- }));
- }
- /**
- * Reset the pagination settings.
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetPagination",
- value: function resetPagination() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee30() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee30$(_context30) {
- while (1) switch (_context30.prev = _context30.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/pagination");
- _context30.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context30.sent;
- return _context30.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context30.stop();
- }
- }, _callee30, this);
- }));
- } ///
- /// SYNONYMS
- ///
+ Index.prototype["delete"] = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid);
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ }; ///
+ /// TASKS
+ ///
- /**
- * Get the list of all synonyms
- *
- * @returns Promise containing object of synonym mappings
- */
- }, {
- key: "getSynonyms",
- value: function getSynonyms() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee31() {
- var url;
- return _regeneratorRuntime().wrap(function _callee31$(_context31) {
- while (1) switch (_context31.prev = _context31.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/synonyms");
- _context31.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context31.abrupt("return", _context31.sent);
- case 4:
- case "end":
- return _context31.stop();
- }
- }, _callee31, this);
- }));
- }
- /**
- * Update the list of synonyms. Overwrite the old list.
- *
- * @param synonyms - Mapping of synonyms with their associated words
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateSynonyms",
- value: function updateSynonyms(synonyms) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee32() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee32$(_context32) {
- while (1) switch (_context32.prev = _context32.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/synonyms");
- _context32.next = 3;
- return this.httpRequest.put(url, synonyms);
- case 3:
- task = _context32.sent;
- return _context32.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context32.stop();
- }
- }, _callee32, this);
- }));
- }
- /**
- * Reset the synonym list to be empty again
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetSynonyms",
- value: function resetSynonyms() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee33() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee33$(_context33) {
- while (1) switch (_context33.prev = _context33.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/synonyms");
- _context33.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context33.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context33.abrupt("return", task);
- case 6:
- case "end":
- return _context33.stop();
- }
- }, _callee33, this);
- }));
- } ///
- /// STOP WORDS
- ///
+ /**
+ * Get the list of all the tasks of the index.
+ *
+ * @param parameters - Parameters to browse the tasks
+ * @returns Promise containing all tasks
+ */
- /**
- * Get the list of all stop-words
- *
- * @returns Promise containing array of stop-words
- */
- }, {
- key: "getStopWords",
- value: function getStopWords() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee34() {
- var url;
- return _regeneratorRuntime().wrap(function _callee34$(_context34) {
- while (1) switch (_context34.prev = _context34.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/stop-words");
- _context34.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context34.abrupt("return", _context34.sent);
- case 4:
- case "end":
- return _context34.stop();
- }
- }, _callee34, this);
- }));
- }
- /**
- * Update the list of stop-words. Overwrite the old list.
- *
- * @param stopWords - Array of strings that contains the stop-words.
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateStopWords",
- value: function updateStopWords(stopWords) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee35() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee35$(_context35) {
- while (1) switch (_context35.prev = _context35.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/stop-words");
- _context35.next = 3;
- return this.httpRequest.put(url, stopWords);
- case 3:
- task = _context35.sent;
- return _context35.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context35.stop();
- }
- }, _callee35, this);
- }));
+ Index.prototype.getTasks = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
}
- /**
- * Reset the stop-words list to be empty again
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetStopWords",
- value: function resetStopWords() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee36() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee36$(_context36) {
- while (1) switch (_context36.prev = _context36.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/stop-words");
- _context36.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context36.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context36.abrupt("return", task);
- case 6:
- case "end":
- return _context36.stop();
- }
- }, _callee36, this);
- }));
- } ///
- /// RANKING RULES
- ///
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.getTasks(__assign(__assign({}, parameters), {
+ indexUids: [this.uid]
+ }))];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Get one task of the index.
+ *
+ * @param taskUid - Task identifier
+ * @returns Promise containing a task
+ */
- /**
- * Get the list of all ranking-rules
- *
- * @returns Promise containing array of ranking-rules
- */
- }, {
- key: "getRankingRules",
- value: function getRankingRules() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee37() {
- var url;
- return _regeneratorRuntime().wrap(function _callee37$(_context37) {
- while (1) switch (_context37.prev = _context37.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/ranking-rules");
- _context37.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context37.abrupt("return", _context37.sent);
- case 4:
- case "end":
- return _context37.stop();
- }
- }, _callee37, this);
- }));
- }
- /**
- * Update the list of ranking-rules. Overwrite the old list.
- *
- * @param rankingRules - Array that contain ranking rules sorted by order of
- * importance.
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateRankingRules",
- value: function updateRankingRules(rankingRules) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee38() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee38$(_context38) {
- while (1) switch (_context38.prev = _context38.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/ranking-rules");
- _context38.next = 3;
- return this.httpRequest.put(url, rankingRules);
- case 3:
- task = _context38.sent;
- return _context38.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context38.stop();
- }
- }, _callee38, this);
- }));
- }
- /**
- * Reset the ranking rules list to its default value
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetRankingRules",
- value: function resetRankingRules() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee39() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee39$(_context39) {
- while (1) switch (_context39.prev = _context39.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/ranking-rules");
- _context39.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context39.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context39.abrupt("return", task);
- case 6:
- case "end":
- return _context39.stop();
- }
- }, _callee39, this);
- }));
- } ///
- /// DISTINCT ATTRIBUTE
- ///
+ Index.prototype.getTask = function (taskUid) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.getTask(taskUid)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Wait for multiple tasks to be processed.
+ *
+ * @param taskUids - Tasks identifier
+ * @param waitOptions - Options on timeout and interval
+ * @returns Promise containing an array of tasks
+ */
- /**
- * Get the distinct-attribute
- *
- * @returns Promise containing the distinct-attribute of the index
- */
- }, {
- key: "getDistinctAttribute",
- value: function getDistinctAttribute() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee40() {
- var url;
- return _regeneratorRuntime().wrap(function _callee40$(_context40) {
- while (1) switch (_context40.prev = _context40.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/distinct-attribute");
- _context40.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context40.abrupt("return", _context40.sent);
- case 4:
- case "end":
- return _context40.stop();
- }
- }, _callee40, this);
- }));
- }
- /**
- * Update the distinct-attribute.
- *
- * @param distinctAttribute - Field name of the distinct-attribute
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateDistinctAttribute",
- value: function updateDistinctAttribute(distinctAttribute) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee41() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee41$(_context41) {
- while (1) switch (_context41.prev = _context41.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/distinct-attribute");
- _context41.next = 3;
- return this.httpRequest.put(url, distinctAttribute);
- case 3:
- task = _context41.sent;
- return _context41.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context41.stop();
- }
- }, _callee41, this);
- }));
- }
- /**
- * Reset the distinct-attribute.
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetDistinctAttribute",
- value: function resetDistinctAttribute() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee42() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee42$(_context42) {
- while (1) switch (_context42.prev = _context42.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/distinct-attribute");
- _context42.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context42.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context42.abrupt("return", task);
- case 6:
- case "end":
- return _context42.stop();
- }
- }, _callee42, this);
- }));
- } ///
- /// FILTERABLE ATTRIBUTES
- ///
+ Index.prototype.waitForTasks = function (taskUids, _a) {
+ var _b = _a === void 0 ? {} : _a,
+ _c = _b.timeOutMs,
+ timeOutMs = _c === void 0 ? 5000 : _c,
+ _d = _b.intervalMs,
+ intervalMs = _d === void 0 ? 50 : _d;
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_e) {
+ switch (_e.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.waitForTasks(taskUids, {
+ timeOutMs: timeOutMs,
+ intervalMs: intervalMs
+ })];
+ case 1:
+ return [2
+ /*return*/, _e.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Wait for a task to be processed.
+ *
+ * @param taskUid - Task identifier
+ * @param waitOptions - Options on timeout and interval
+ * @returns Promise containing an array of tasks
+ */
- /**
- * Get the filterable-attributes
- *
- * @returns Promise containing an array of filterable-attributes
- */
- }, {
- key: "getFilterableAttributes",
- value: function getFilterableAttributes() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee43() {
- var url;
- return _regeneratorRuntime().wrap(function _callee43$(_context43) {
- while (1) switch (_context43.prev = _context43.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/filterable-attributes");
- _context43.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context43.abrupt("return", _context43.sent);
- case 4:
- case "end":
- return _context43.stop();
- }
- }, _callee43, this);
- }));
- }
- /**
- * Update the filterable-attributes.
- *
- * @param filterableAttributes - Array of strings containing the attributes
- * that can be used as filters at query time
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateFilterableAttributes",
- value: function updateFilterableAttributes(filterableAttributes) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee44() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee44$(_context44) {
- while (1) switch (_context44.prev = _context44.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/filterable-attributes");
- _context44.next = 3;
- return this.httpRequest.put(url, filterableAttributes);
- case 3:
- task = _context44.sent;
- return _context44.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context44.stop();
- }
- }, _callee44, this);
- }));
- }
- /**
- * Reset the filterable-attributes.
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetFilterableAttributes",
- value: function resetFilterableAttributes() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee45() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee45$(_context45) {
- while (1) switch (_context45.prev = _context45.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/filterable-attributes");
- _context45.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context45.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context45.abrupt("return", task);
- case 6:
- case "end":
- return _context45.stop();
- }
- }, _callee45, this);
- }));
- } ///
- /// SORTABLE ATTRIBUTES
- ///
+ Index.prototype.waitForTask = function (taskUid, _a) {
+ var _b = _a === void 0 ? {} : _a,
+ _c = _b.timeOutMs,
+ timeOutMs = _c === void 0 ? 5000 : _c,
+ _d = _b.intervalMs,
+ intervalMs = _d === void 0 ? 50 : _d;
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_e) {
+ switch (_e.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.waitForTask(taskUid, {
+ timeOutMs: timeOutMs,
+ intervalMs: intervalMs
+ })];
+ case 1:
+ return [2
+ /*return*/, _e.sent()];
+ }
+ });
+ });
+ }; ///
+ /// STATS
+ ///
- /**
- * Get the sortable-attributes
- *
- * @returns Promise containing array of sortable-attributes
- */
- }, {
- key: "getSortableAttributes",
- value: function getSortableAttributes() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee46() {
- var url;
- return _regeneratorRuntime().wrap(function _callee46$(_context46) {
- while (1) switch (_context46.prev = _context46.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/sortable-attributes");
- _context46.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context46.abrupt("return", _context46.sent);
- case 4:
- case "end":
- return _context46.stop();
- }
- }, _callee46, this);
- }));
- }
- /**
- * Update the sortable-attributes.
- *
- * @param sortableAttributes - Array of strings containing the attributes that
- * can be used to sort search results at query time
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateSortableAttributes",
- value: function updateSortableAttributes(sortableAttributes) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee47() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee47$(_context47) {
- while (1) switch (_context47.prev = _context47.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/sortable-attributes");
- _context47.next = 3;
- return this.httpRequest.put(url, sortableAttributes);
- case 3:
- task = _context47.sent;
- return _context47.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context47.stop();
- }
- }, _callee47, this);
- }));
- }
- /**
- * Reset the sortable-attributes.
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetSortableAttributes",
- value: function resetSortableAttributes() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee48() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee48$(_context48) {
- while (1) switch (_context48.prev = _context48.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/sortable-attributes");
- _context48.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context48.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context48.abrupt("return", task);
- case 6:
- case "end":
- return _context48.stop();
- }
- }, _callee48, this);
- }));
- } ///
- /// SEARCHABLE ATTRIBUTE
- ///
+ /**
+ * Get stats of an index
+ *
+ * @returns Promise containing object with stats of the index
+ */
- /**
- * Get the searchable-attributes
- *
- * @returns Promise containing array of searchable-attributes
- */
- }, {
- key: "getSearchableAttributes",
- value: function getSearchableAttributes() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee49() {
- var url;
- return _regeneratorRuntime().wrap(function _callee49$(_context49) {
- while (1) switch (_context49.prev = _context49.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/searchable-attributes");
- _context49.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context49.abrupt("return", _context49.sent);
- case 4:
- case "end":
- return _context49.stop();
- }
- }, _callee49, this);
- }));
- }
- /**
- * Update the searchable-attributes.
- *
- * @param searchableAttributes - Array of strings that contains searchable
- * attributes sorted by order of importance(most to least important)
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateSearchableAttributes",
- value: function updateSearchableAttributes(searchableAttributes) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee50() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee50$(_context50) {
- while (1) switch (_context50.prev = _context50.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/searchable-attributes");
- _context50.next = 3;
- return this.httpRequest.put(url, searchableAttributes);
- case 3:
- task = _context50.sent;
- return _context50.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context50.stop();
- }
- }, _callee50, this);
- }));
- }
- /**
- * Reset the searchable-attributes.
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetSearchableAttributes",
- value: function resetSearchableAttributes() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee51() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee51$(_context51) {
- while (1) switch (_context51.prev = _context51.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/searchable-attributes");
- _context51.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context51.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context51.abrupt("return", task);
- case 6:
- case "end":
- return _context51.stop();
- }
- }, _callee51, this);
- }));
- } ///
- /// DISPLAYED ATTRIBUTE
- ///
+ Index.prototype.getStats = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/stats");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ }; ///
+ /// DOCUMENTS
+ ///
- /**
- * Get the displayed-attributes
- *
- * @returns Promise containing array of displayed-attributes
- */
- }, {
- key: "getDisplayedAttributes",
- value: function getDisplayedAttributes() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee52() {
- var url;
- return _regeneratorRuntime().wrap(function _callee52$(_context52) {
- while (1) switch (_context52.prev = _context52.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/displayed-attributes");
- _context52.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context52.abrupt("return", _context52.sent);
- case 4:
- case "end":
- return _context52.stop();
- }
- }, _callee52, this);
- }));
- }
- /**
- * Update the displayed-attributes.
- *
- * @param displayedAttributes - Array of strings that contains attributes of
- * an index to display
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateDisplayedAttributes",
- value: function updateDisplayedAttributes(displayedAttributes) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee53() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee53$(_context53) {
- while (1) switch (_context53.prev = _context53.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/displayed-attributes");
- _context53.next = 3;
- return this.httpRequest.put(url, displayedAttributes);
- case 3:
- task = _context53.sent;
- return _context53.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context53.stop();
- }
- }, _callee53, this);
- }));
- }
- /**
- * Reset the displayed-attributes.
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetDisplayedAttributes",
- value: function resetDisplayedAttributes() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee54() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee54$(_context54) {
- while (1) switch (_context54.prev = _context54.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/displayed-attributes");
- _context54.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context54.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context54.abrupt("return", task);
- case 6:
- case "end":
- return _context54.stop();
- }
- }, _callee54, this);
- }));
- } ///
- /// TYPO TOLERANCE
- ///
+ /**
+ * Get documents of an index
+ *
+ * @param parameters - Parameters to browse the documents
+ * @returns Promise containing Document responses
+ */
- /**
- * Get the typo tolerance settings.
- *
- * @returns Promise containing the typo tolerance settings.
- */
- }, {
- key: "getTypoTolerance",
- value: function getTypoTolerance() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee55() {
- var url;
- return _regeneratorRuntime().wrap(function _callee55$(_context55) {
- while (1) switch (_context55.prev = _context55.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/typo-tolerance");
- _context55.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context55.abrupt("return", _context55.sent);
- case 4:
- case "end":
- return _context55.stop();
- }
- }, _callee55, this);
- }));
- }
- /**
- * Update the typo tolerance settings.
- *
- * @param typoTolerance - Object containing the custom typo tolerance
- * settings.
- * @returns Promise containing object of the enqueued update
- */
- }, {
- key: "updateTypoTolerance",
- value: function updateTypoTolerance(typoTolerance) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee56() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee56$(_context56) {
- while (1) switch (_context56.prev = _context56.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/typo-tolerance");
- _context56.next = 3;
- return this.httpRequest.patch(url, typoTolerance);
- case 3:
- task = _context56.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context56.abrupt("return", task);
- case 6:
- case "end":
- return _context56.stop();
- }
- }, _callee56, this);
- }));
+ Index.prototype.getDocuments = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
}
- /**
- * Reset the typo tolerance settings.
- *
- * @returns Promise containing object of the enqueued update
- */
- }, {
- key: "resetTypoTolerance",
- value: function resetTypoTolerance() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee57() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee57$(_context57) {
- while (1) switch (_context57.prev = _context57.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/typo-tolerance");
- _context57.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context57.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context57.abrupt("return", task);
- case 6:
- case "end":
- return _context57.stop();
- }
- }, _callee57, this);
- }));
- } ///
- /// FACETING
- ///
+ return __awaiter(this, void 0, void 0, function () {
+ var url, fields;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/documents");
+ fields = function () {
+ var _a;
+ if (Array.isArray(parameters === null || parameters === void 0 ? void 0 : parameters.fields)) {
+ return (_a = parameters === null || parameters === void 0 ? void 0 : parameters.fields) === null || _a === void 0 ? void 0 : _a.join(',');
+ }
+ return undefined;
+ }();
+ return [4
+ /*yield*/, this.httpRequest.get(url, removeUndefinedFromObject(__assign(__assign({}, parameters), {
+ fields: fields
+ })))];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Get one document
+ *
+ * @param documentId - Document ID
+ * @param parameters - Parameters applied on a document
+ * @returns Promise containing Document response
+ */
- /**
- * Get the faceting settings.
- *
- * @returns Promise containing object of faceting index settings
- */
- }, {
- key: "getFaceting",
- value: function getFaceting() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee58() {
- var url;
- return _regeneratorRuntime().wrap(function _callee58$(_context58) {
- while (1) switch (_context58.prev = _context58.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/faceting");
- _context58.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context58.abrupt("return", _context58.sent);
- case 4:
- case "end":
- return _context58.stop();
- }
- }, _callee58, this);
- }));
- }
- /**
- * Update the faceting settings.
- *
- * @param faceting - Faceting index settings object
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "updateFaceting",
- value: function updateFaceting(faceting) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee59() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee59$(_context59) {
- while (1) switch (_context59.prev = _context59.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/faceting");
- _context59.next = 3;
- return this.httpRequest.patch(url, faceting);
- case 3:
- task = _context59.sent;
- return _context59.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context59.stop();
- }
- }, _callee59, this);
- }));
- }
- /**
- * Reset the faceting settings.
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetFaceting",
- value: function resetFaceting() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee60() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee60$(_context60) {
- while (1) switch (_context60.prev = _context60.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/faceting");
- _context60.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context60.sent;
- return _context60.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context60.stop();
- }
- }, _callee60, this);
- }));
- } ///
- /// SEPARATOR TOKENS
- ///
+ Index.prototype.getDocument = function (documentId, parameters) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, fields;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/documents/").concat(documentId);
+ fields = function () {
+ var _a;
+ if (Array.isArray(parameters === null || parameters === void 0 ? void 0 : parameters.fields)) {
+ return (_a = parameters === null || parameters === void 0 ? void 0 : parameters.fields) === null || _a === void 0 ? void 0 : _a.join(',');
+ }
+ return undefined;
+ }();
+ return [4
+ /*yield*/, this.httpRequest.get(url, removeUndefinedFromObject(__assign(__assign({}, parameters), {
+ fields: fields
+ })))];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Add or replace multiples documents to an index
+ *
+ * @param documents - Array of Document objects to add/replace
+ * @param options - Options on document addition
+ * @returns Promise containing an EnqueuedTask
+ */
- /**
- * Get the list of all separator tokens.
- *
- * @returns Promise containing array of separator tokens
- */
- }, {
- key: "getSeparatorTokens",
- value: function getSeparatorTokens() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee61() {
- var url;
- return _regeneratorRuntime().wrap(function _callee61$(_context61) {
- while (1) switch (_context61.prev = _context61.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/separator-tokens");
- _context61.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context61.abrupt("return", _context61.sent);
- case 4:
- case "end":
- return _context61.stop();
- }
- }, _callee61, this);
- }));
- }
- /**
- * Update the list of separator tokens. Overwrite the old list.
- *
- * @param separatorTokens - Array that contains separator tokens.
- * @returns Promise containing an EnqueuedTask or null
- */
- }, {
- key: "updateSeparatorTokens",
- value: function updateSeparatorTokens(separatorTokens) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee62() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee62$(_context62) {
- while (1) switch (_context62.prev = _context62.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/separator-tokens");
- _context62.next = 3;
- return this.httpRequest.put(url, separatorTokens);
- case 3:
- task = _context62.sent;
- return _context62.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context62.stop();
- }
- }, _callee62, this);
- }));
- }
- /**
- * Reset the separator tokens list to its default value
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetSeparatorTokens",
- value: function resetSeparatorTokens() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee63() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee63$(_context63) {
- while (1) switch (_context63.prev = _context63.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/separator-tokens");
- _context63.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context63.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context63.abrupt("return", task);
- case 6:
- case "end":
- return _context63.stop();
- }
- }, _callee63, this);
- }));
- } ///
- /// NON-SEPARATOR TOKENS
- ///
+ Index.prototype.addDocuments = function (documents, options) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/documents");
+ return [4
+ /*yield*/, this.httpRequest.post(url, documents, options)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Add or replace multiples documents to an index in batches
+ *
+ * @param documents - Array of Document objects to add/replace
+ * @param batchSize - Size of the batch
+ * @param options - Options on document addition
+ * @returns Promise containing array of enqueued task objects for each batch
+ */
- /**
- * Get the list of all non-separator tokens.
- *
- * @returns Promise containing array of non-separator tokens
- */
- }, {
- key: "getNonSeparatorTokens",
- value: function getNonSeparatorTokens() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee64() {
- var url;
- return _regeneratorRuntime().wrap(function _callee64$(_context64) {
- while (1) switch (_context64.prev = _context64.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/non-separator-tokens");
- _context64.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context64.abrupt("return", _context64.sent);
- case 4:
- case "end":
- return _context64.stop();
- }
- }, _callee64, this);
- }));
+ Index.prototype.addDocumentsInBatches = function (documents, batchSize, options) {
+ if (batchSize === void 0) {
+ batchSize = 1000;
}
- /**
- * Update the list of non-separator tokens. Overwrite the old list.
- *
- * @param nonSeparatorTokens - Array that contains non-separator tokens.
- * @returns Promise containing an EnqueuedTask or null
- */
- }, {
- key: "updateNonSeparatorTokens",
- value: function updateNonSeparatorTokens(nonSeparatorTokens) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee65() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee65$(_context65) {
- while (1) switch (_context65.prev = _context65.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/non-separator-tokens");
- _context65.next = 3;
- return this.httpRequest.put(url, nonSeparatorTokens);
- case 3:
- task = _context65.sent;
- return _context65.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context65.stop();
- }
- }, _callee65, this);
- }));
+ return __awaiter(this, void 0, void 0, function () {
+ var updates, i, _a, _b;
+ return __generator(this, function (_c) {
+ switch (_c.label) {
+ case 0:
+ updates = [];
+ i = 0;
+ _c.label = 1;
+ case 1:
+ if (!(i < documents.length)) return [3
+ /*break*/, 4];
+ _b = (_a = updates).push;
+ return [4
+ /*yield*/, this.addDocuments(documents.slice(i, i + batchSize), options)];
+ case 2:
+ _b.apply(_a, [_c.sent()]);
+ _c.label = 3;
+ case 3:
+ i += batchSize;
+ return [3
+ /*break*/, 1];
+ case 4:
+ return [2
+ /*return*/, updates];
+ }
+ });
+ });
+ };
+ /**
+ * Add or update multiples documents to an index
+ *
+ * @param documents - Array of Document objects to add/update
+ * @param options - Options on document update
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateDocuments = function (documents, options) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/documents");
+ return [4
+ /*yield*/, this.httpRequest.put(url, documents, options)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Add or update multiples documents to an index in batches
+ *
+ * @param documents - Array of Document objects to add/update
+ * @param batchSize - Size of the batch
+ * @param options - Options on document update
+ * @returns Promise containing array of enqueued task objects for each batch
+ */
+
+ Index.prototype.updateDocumentsInBatches = function (documents, batchSize, options) {
+ if (batchSize === void 0) {
+ batchSize = 1000;
}
- /**
- * Reset the non-separator tokens list to its default value
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetNonSeparatorTokens",
- value: function resetNonSeparatorTokens() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee66() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee66$(_context66) {
- while (1) switch (_context66.prev = _context66.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/non-separator-tokens");
- _context66.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context66.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context66.abrupt("return", task);
- case 6:
- case "end":
- return _context66.stop();
- }
- }, _callee66, this);
- }));
- } ///
- /// DICTIONARY
- ///
+ return __awaiter(this, void 0, void 0, function () {
+ var updates, i, _a, _b;
+ return __generator(this, function (_c) {
+ switch (_c.label) {
+ case 0:
+ updates = [];
+ i = 0;
+ _c.label = 1;
+ case 1:
+ if (!(i < documents.length)) return [3
+ /*break*/, 4];
+ _b = (_a = updates).push;
+ return [4
+ /*yield*/, this.updateDocuments(documents.slice(i, i + batchSize), options)];
+ case 2:
+ _b.apply(_a, [_c.sent()]);
+ _c.label = 3;
+ case 3:
+ i += batchSize;
+ return [3
+ /*break*/, 1];
+ case 4:
+ return [2
+ /*return*/, updates];
+ }
+ });
+ });
+ };
+ /**
+ * Delete one document
+ *
+ * @param documentId - Id of Document to delete
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.deleteDocument = function (documentId) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/documents/").concat(documentId);
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ };
+ /**
+ * Delete multiples documents of an index
+ *
+ * @param documentsIds - Array of Document Ids to delete
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.deleteDocuments = function (documentsIds) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/documents/delete-batch");
+ return [4
+ /*yield*/, this.httpRequest.post(url, documentsIds)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Delete all documents of an index
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.deleteAllDocuments = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/documents");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// SETTINGS
+ ///
+
+ /**
+ * Retrieve all settings
+ *
+ * @returns Promise containing Settings object
+ */
+
+ Index.prototype.getSettings = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update all settings Any parameters not provided will be left unchanged.
+ *
+ * @param settings - Object containing parameters with their updated values
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateSettings = function (settings) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings");
+ return [4
+ /*yield*/, this.httpRequest.patch(url, settings)];
+ case 1:
+ task = _a.sent();
+ task.enqueued = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ };
+ /**
+ * Reset settings.
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetSettings = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// PAGINATION SETTINGS
+ ///
+
+ /**
+ * Get the pagination settings.
+ *
+ * @returns Promise containing object of pagination settings
+ */
+
+ Index.prototype.getPagination = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/pagination");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the pagination settings.
+ *
+ * @param pagination - Pagination object
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updatePagination = function (pagination) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/pagination");
+ return [4
+ /*yield*/, this.httpRequest.patch(url, pagination)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the pagination settings.
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetPagination = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/pagination");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ }; ///
+ /// SYNONYMS
+ ///
+
+ /**
+ * Get the list of all synonyms
+ *
+ * @returns Promise containing object of synonym mappings
+ */
+
+ Index.prototype.getSynonyms = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/synonyms");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the list of synonyms. Overwrite the old list.
+ *
+ * @param synonyms - Mapping of synonyms with their associated words
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateSynonyms = function (synonyms) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/synonyms");
+ return [4
+ /*yield*/, this.httpRequest.put(url, synonyms)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the synonym list to be empty again
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetSynonyms = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/synonyms");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// STOP WORDS
+ ///
+
+ /**
+ * Get the list of all stop-words
+ *
+ * @returns Promise containing array of stop-words
+ */
+
+ Index.prototype.getStopWords = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/stop-words");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the list of stop-words. Overwrite the old list.
+ *
+ * @param stopWords - Array of strings that contains the stop-words.
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateStopWords = function (stopWords) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/stop-words");
+ return [4
+ /*yield*/, this.httpRequest.put(url, stopWords)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the stop-words list to be empty again
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetStopWords = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/stop-words");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// RANKING RULES
+ ///
+
+ /**
+ * Get the list of all ranking-rules
+ *
+ * @returns Promise containing array of ranking-rules
+ */
+
+ Index.prototype.getRankingRules = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/ranking-rules");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the list of ranking-rules. Overwrite the old list.
+ *
+ * @param rankingRules - Array that contain ranking rules sorted by order of
+ * importance.
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateRankingRules = function (rankingRules) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/ranking-rules");
+ return [4
+ /*yield*/, this.httpRequest.put(url, rankingRules)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the ranking rules list to its default value
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetRankingRules = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/ranking-rules");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// DISTINCT ATTRIBUTE
+ ///
+
+ /**
+ * Get the distinct-attribute
+ *
+ * @returns Promise containing the distinct-attribute of the index
+ */
+
+ Index.prototype.getDistinctAttribute = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/distinct-attribute");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the distinct-attribute.
+ *
+ * @param distinctAttribute - Field name of the distinct-attribute
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateDistinctAttribute = function (distinctAttribute) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/distinct-attribute");
+ return [4
+ /*yield*/, this.httpRequest.put(url, distinctAttribute)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the distinct-attribute.
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetDistinctAttribute = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/distinct-attribute");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// FILTERABLE ATTRIBUTES
+ ///
+
+ /**
+ * Get the filterable-attributes
+ *
+ * @returns Promise containing an array of filterable-attributes
+ */
+
+ Index.prototype.getFilterableAttributes = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/filterable-attributes");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the filterable-attributes.
+ *
+ * @param filterableAttributes - Array of strings containing the attributes
+ * that can be used as filters at query time
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateFilterableAttributes = function (filterableAttributes) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/filterable-attributes");
+ return [4
+ /*yield*/, this.httpRequest.put(url, filterableAttributes)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the filterable-attributes.
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetFilterableAttributes = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/filterable-attributes");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// SORTABLE ATTRIBUTES
+ ///
+
+ /**
+ * Get the sortable-attributes
+ *
+ * @returns Promise containing array of sortable-attributes
+ */
+
+ Index.prototype.getSortableAttributes = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/sortable-attributes");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the sortable-attributes.
+ *
+ * @param sortableAttributes - Array of strings containing the attributes that
+ * can be used to sort search results at query time
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateSortableAttributes = function (sortableAttributes) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/sortable-attributes");
+ return [4
+ /*yield*/, this.httpRequest.put(url, sortableAttributes)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the sortable-attributes.
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetSortableAttributes = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/sortable-attributes");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// SEARCHABLE ATTRIBUTE
+ ///
+
+ /**
+ * Get the searchable-attributes
+ *
+ * @returns Promise containing array of searchable-attributes
+ */
+
+ Index.prototype.getSearchableAttributes = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/searchable-attributes");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the searchable-attributes.
+ *
+ * @param searchableAttributes - Array of strings that contains searchable
+ * attributes sorted by order of importance(most to least important)
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateSearchableAttributes = function (searchableAttributes) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/searchable-attributes");
+ return [4
+ /*yield*/, this.httpRequest.put(url, searchableAttributes)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the searchable-attributes.
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetSearchableAttributes = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/searchable-attributes");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// DISPLAYED ATTRIBUTE
+ ///
+
+ /**
+ * Get the displayed-attributes
+ *
+ * @returns Promise containing array of displayed-attributes
+ */
+
+ Index.prototype.getDisplayedAttributes = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/displayed-attributes");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the displayed-attributes.
+ *
+ * @param displayedAttributes - Array of strings that contains attributes of
+ * an index to display
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.updateDisplayedAttributes = function (displayedAttributes) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/displayed-attributes");
+ return [4
+ /*yield*/, this.httpRequest.put(url, displayedAttributes)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the displayed-attributes.
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetDisplayedAttributes = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/displayed-attributes");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// TYPO TOLERANCE
+ ///
+
+ /**
+ * Get the typo tolerance settings.
+ *
+ * @returns Promise containing the typo tolerance settings.
+ */
+
+ Index.prototype.getTypoTolerance = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/typo-tolerance");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the typo tolerance settings.
+ *
+ * @param typoTolerance - Object containing the custom typo tolerance
+ * settings.
+ * @returns Promise containing object of the enqueued update
+ */
+
+ Index.prototype.updateTypoTolerance = function (typoTolerance) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/typo-tolerance");
+ return [4
+ /*yield*/, this.httpRequest.patch(url, typoTolerance)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the typo tolerance settings.
+ *
+ * @returns Promise containing object of the enqueued update
+ */
+
+ Index.prototype.resetTypoTolerance = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/typo-tolerance");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ task.enqueuedAt = new Date(task.enqueuedAt);
+ return [2
+ /*return*/, task];
+ }
+ });
+ });
+ }; ///
+ /// FACETING
+ ///
+
+ /**
+ * Get the faceting settings.
+ *
+ * @returns Promise containing object of faceting index settings
+ */
+
+ Index.prototype.getFaceting = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/faceting");
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update the faceting settings.
+ *
+ * @param faceting - Faceting index settings object
+ * @returns Promise containing an EnqueuedTask
+ */
- /**
- * Get the dictionary settings of a Meilisearch index.
- *
- * @returns Promise containing the dictionary settings
- */
- }, {
- key: "getDictionary",
- value: function getDictionary() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee67() {
- var url;
- return _regeneratorRuntime().wrap(function _callee67$(_context67) {
- while (1) switch (_context67.prev = _context67.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/dictionary");
- _context67.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context67.abrupt("return", _context67.sent);
- case 4:
- case "end":
- return _context67.stop();
- }
- }, _callee67, this);
- }));
- }
- /**
- * Update the the dictionary settings. Overwrite the old settings.
- *
- * @param dictionary - Array that contains the new dictionary settings.
- * @returns Promise containing an EnqueuedTask or null
- */
- }, {
- key: "updateDictionary",
- value: function updateDictionary(dictionary) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee68() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee68$(_context68) {
- while (1) switch (_context68.prev = _context68.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/dictionary");
- _context68.next = 3;
- return this.httpRequest.put(url, dictionary);
- case 3:
- task = _context68.sent;
- return _context68.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context68.stop();
- }
- }, _callee68, this);
- }));
- }
- /**
- * Reset the dictionary settings to its default value
- *
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "resetDictionary",
- value: function resetDictionary() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee69() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee69$(_context69) {
- while (1) switch (_context69.prev = _context69.next) {
- case 0:
- url = "indexes/".concat(this.uid, "/settings/dictionary");
- _context69.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- task = _context69.sent;
- task.enqueuedAt = new Date(task.enqueuedAt);
- return _context69.abrupt("return", task);
- case 6:
- case "end":
- return _context69.stop();
- }
- }, _callee69, this);
- }));
- }
- }], [{
- key: "create",
- value: function create(uid) {
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- var config = arguments.length > 2 ? arguments[2] : undefined;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee70() {
- var url, req, task;
- return _regeneratorRuntime().wrap(function _callee70$(_context70) {
- while (1) switch (_context70.prev = _context70.next) {
- case 0:
- url = "indexes";
- req = new HttpRequests(config);
- _context70.next = 4;
- return req.post(url, Object.assign(Object.assign({}, options), {
- uid: uid
- }));
- case 4:
- task = _context70.sent;
- return _context70.abrupt("return", new EnqueuedTask(task));
- case 6:
- case "end":
- return _context70.stop();
- }
- }, _callee70);
- }));
- }
- }]);
+ Index.prototype.updateFaceting = function (faceting) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/faceting");
+ return [4
+ /*yield*/, this.httpRequest.patch(url, faceting)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
+ /**
+ * Reset the faceting settings.
+ *
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Index.prototype.resetFaceting = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes/".concat(this.uid, "/settings/faceting");
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ };
return Index;
}();
@@ -3518,14 +2467,14 @@
* Copyright: 2019, MeiliSearch
*/
- var Client = /*#__PURE__*/function () {
+ var Client = /** @class */
+ function () {
/**
* Creates new MeiliSearch instance
*
* @param config - Configuration object
*/
function Client(config) {
- _classCallCheck(this, Client);
this.config = config;
this.httpRequest = new HttpRequests(config);
this.tasks = new TaskClient(config);
@@ -3537,780 +2486,710 @@
* @returns Instance of Index
*/
- _createClass(Client, [{
- key: "index",
- value: function index(indexUid) {
- return new Index(this.config, indexUid);
- }
- /**
- * Gather information about an index by calling MeiliSearch and return an
- * Index instance with the gathered information
- *
- * @param indexUid - The index UID
- * @returns Promise returning Index instance
- */
- }, {
- key: "getIndex",
- value: function getIndex(indexUid) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
- return _regeneratorRuntime().wrap(function _callee$(_context) {
- while (1) switch (_context.prev = _context.next) {
- case 0:
- return _context.abrupt("return", new Index(this.config, indexUid).fetchInfo());
- case 1:
- case "end":
- return _context.stop();
- }
- }, _callee, this);
- }));
- }
- /**
- * Gather information about an index by calling MeiliSearch and return the raw
- * JSON response
- *
- * @param indexUid - The index UID
- * @returns Promise returning index information
- */
- }, {
- key: "getRawIndex",
- value: function getRawIndex(indexUid) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
- while (1) switch (_context2.prev = _context2.next) {
- case 0:
- return _context2.abrupt("return", new Index(this.config, indexUid).getRawInfo());
- case 1:
- case "end":
- return _context2.stop();
- }
- }, _callee2, this);
- }));
- }
- /**
- * Get all the indexes as Index instances.
- *
- * @param parameters - Parameters to browse the indexes
- * @returns Promise returning array of raw index information
- */
- }, {
- key: "getIndexes",
- value: function getIndexes() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
- var _this = this;
- var rawIndexes, indexes;
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
- while (1) switch (_context3.prev = _context3.next) {
- case 0:
- _context3.next = 2;
- return this.getRawIndexes(parameters);
- case 2:
- rawIndexes = _context3.sent;
- indexes = rawIndexes.results.map(function (index) {
- return new Index(_this.config, index.uid, index.primaryKey);
- });
- return _context3.abrupt("return", Object.assign(Object.assign({}, rawIndexes), {
- results: indexes
- }));
- case 5:
- case "end":
- return _context3.stop();
- }
- }, _callee3, this);
- }));
- }
- /**
- * Get all the indexes in their raw value (no Index instances).
- *
- * @param parameters - Parameters to browse the indexes
- * @returns Promise returning array of raw index information
- */
- }, {
- key: "getRawIndexes",
- value: function getRawIndexes() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
- var url;
- return _regeneratorRuntime().wrap(function _callee4$(_context4) {
- while (1) switch (_context4.prev = _context4.next) {
- case 0:
- url = "indexes";
- _context4.next = 3;
- return this.httpRequest.get(url, parameters);
- case 3:
- return _context4.abrupt("return", _context4.sent);
- case 4:
- case "end":
- return _context4.stop();
- }
- }, _callee4, this);
- }));
- }
- /**
- * Create a new index
- *
- * @param uid - The index UID
- * @param options - Index options
- * @returns Promise returning Index instance
- */
- }, {
- key: "createIndex",
- value: function createIndex(uid) {
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
- return _regeneratorRuntime().wrap(function _callee5$(_context5) {
- while (1) switch (_context5.prev = _context5.next) {
- case 0:
- _context5.next = 2;
- return Index.create(uid, options, this.config);
- case 2:
- return _context5.abrupt("return", _context5.sent);
- case 3:
- case "end":
- return _context5.stop();
- }
- }, _callee5, this);
- }));
- }
- /**
- * Update an index
- *
- * @param uid - The index UID
- * @param options - Index options to update
- * @returns Promise returning Index instance after updating
- */
- }, {
- key: "updateIndex",
- value: function updateIndex(uid) {
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
- return _regeneratorRuntime().wrap(function _callee6$(_context6) {
- while (1) switch (_context6.prev = _context6.next) {
- case 0:
- _context6.next = 2;
- return new Index(this.config, uid).update(options);
- case 2:
- return _context6.abrupt("return", _context6.sent);
- case 3:
- case "end":
- return _context6.stop();
- }
- }, _callee6, this);
- }));
- }
- /**
- * Delete an index
- *
- * @param uid - The index UID
- * @returns Promise which resolves when index is deleted successfully
- */
- }, {
- key: "deleteIndex",
- value: function deleteIndex(uid) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
- return _regeneratorRuntime().wrap(function _callee7$(_context7) {
- while (1) switch (_context7.prev = _context7.next) {
- case 0:
- _context7.next = 2;
- return new Index(this.config, uid).delete();
- case 2:
- return _context7.abrupt("return", _context7.sent);
- case 3:
- case "end":
- return _context7.stop();
- }
- }, _callee7, this);
- }));
- }
- /**
- * Deletes an index if it already exists.
- *
- * @param uid - The index UID
- * @returns Promise which resolves to true when index exists and is deleted
- * successfully, otherwise false if it does not exist
- */
- }, {
- key: "deleteIndexIfExists",
- value: function deleteIndexIfExists(uid) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
- return _regeneratorRuntime().wrap(function _callee8$(_context8) {
- while (1) switch (_context8.prev = _context8.next) {
- case 0:
- _context8.prev = 0;
- _context8.next = 3;
- return this.deleteIndex(uid);
- case 3:
- return _context8.abrupt("return", true);
- case 6:
- _context8.prev = 6;
- _context8.t0 = _context8["catch"](0);
- if (!(_context8.t0.code === "index_not_found"
- /* ErrorStatusCode.INDEX_NOT_FOUND */)) {
- _context8.next = 10;
- break;
- }
- return _context8.abrupt("return", false);
- case 10:
- throw _context8.t0;
- case 11:
- case "end":
- return _context8.stop();
- }
- }, _callee8, this, [[0, 6]]);
- }));
- }
- /**
- * Swaps a list of index tuples.
- *
- * @param params - List of indexes tuples to swap.
- * @returns Promise returning object of the enqueued task
- */
- }, {
- key: "swapIndexes",
- value: function swapIndexes(params) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {
- var url;
- return _regeneratorRuntime().wrap(function _callee9$(_context9) {
- while (1) switch (_context9.prev = _context9.next) {
- case 0:
- url = '/swap-indexes';
- _context9.next = 3;
- return this.httpRequest.post(url, params);
- case 3:
- return _context9.abrupt("return", _context9.sent);
- case 4:
- case "end":
- return _context9.stop();
- }
- }, _callee9, this);
- }));
- } ///
- /// Multi Search
- ///
+ Client.prototype.index = function (indexUid) {
+ return new Index(this.config, indexUid);
+ };
+ /**
+ * Gather information about an index by calling MeiliSearch and return an
+ * Index instance with the gathered information
+ *
+ * @param indexUid - The index UID
+ * @returns Promise returning Index instance
+ */
+
+ Client.prototype.getIndex = function (indexUid) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ return [2
+ /*return*/, new Index(this.config, indexUid).fetchInfo()];
+ });
+ });
+ };
+ /**
+ * Gather information about an index by calling MeiliSearch and return the raw
+ * JSON response
+ *
+ * @param indexUid - The index UID
+ * @returns Promise returning index information
+ */
+
+ Client.prototype.getRawIndex = function (indexUid) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ return [2
+ /*return*/, new Index(this.config, indexUid).getRawInfo()];
+ });
+ });
+ };
+ /**
+ * Get all the indexes as Index instances.
+ *
+ * @param parameters - Parameters to browse the indexes
+ * @returns Promise returning array of raw index information
+ */
+
+ Client.prototype.getIndexes = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
+ }
+ return __awaiter(this, void 0, void 0, function () {
+ var rawIndexes, indexes;
+ var _this = this;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.getRawIndexes(parameters)];
+ case 1:
+ rawIndexes = _a.sent();
+ indexes = rawIndexes.results.map(function (index) {
+ return new Index(_this.config, index.uid, index.primaryKey);
+ });
+ return [2
+ /*return*/, __assign(__assign({}, rawIndexes), {
+ results: indexes
+ })];
+ }
+ });
+ });
+ };
+ /**
+ * Get all the indexes in their raw value (no Index instances).
+ *
+ * @param parameters - Parameters to browse the indexes
+ * @returns Promise returning array of raw index information
+ */
+
+ Client.prototype.getRawIndexes = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
+ }
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "indexes";
+ return [4
+ /*yield*/, this.httpRequest.get(url, parameters)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Create a new index
+ *
+ * @param uid - The index UID
+ * @param options - Index options
+ * @returns Promise returning Index instance
+ */
+
+ Client.prototype.createIndex = function (uid, options) {
+ if (options === void 0) {
+ options = {};
+ }
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, Index.create(uid, options, this.config)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update an index
+ *
+ * @param uid - The index UID
+ * @param options - Index options to update
+ * @returns Promise returning Index instance after updating
+ */
+
+ Client.prototype.updateIndex = function (uid, options) {
+ if (options === void 0) {
+ options = {};
+ }
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, new Index(this.config, uid).update(options)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Delete an index
+ *
+ * @param uid - The index UID
+ * @returns Promise which resolves when index is deleted successfully
+ */
+
+ Client.prototype.deleteIndex = function (uid) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, new Index(this.config, uid)["delete"]()];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Deletes an index if it already exists.
+ *
+ * @param uid - The index UID
+ * @returns Promise which resolves to true when index exists and is deleted
+ * successfully, otherwise false if it does not exist
+ */
+
+ Client.prototype.deleteIndexIfExists = function (uid) {
+ return __awaiter(this, void 0, void 0, function () {
+ var e_1;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ _a.trys.push([0, 2,, 3]);
+ return [4
+ /*yield*/, this.deleteIndex(uid)];
+ case 1:
+ _a.sent();
+ return [2
+ /*return*/, true];
+ case 2:
+ e_1 = _a.sent();
+ if (e_1.code === "index_not_found"
+ /* ErrorStatusCode.INDEX_NOT_FOUND */) {
+ return [2
+ /*return*/, false];
+ }
+ throw e_1;
+ case 3:
+ return [2
+ /*return*/];
+ }
+ });
+ });
+ };
+ /**
+ * Swaps a list of index tuples.
+ *
+ * @param params - List of indexes tuples to swap.
+ * @returns Promise returning object of the enqueued task
+ */
+
+ Client.prototype.swapIndexes = function (params) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = '/swap-indexes';
+ return [4
+ /*yield*/, this.httpRequest.post(url, params)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ }; ///
+ /// Multi Search
+ ///
+
+ /**
+ * Perform multiple search queries.
+ *
+ * It is possible to make multiple search queries on the same index or on
+ * different ones
+ *
+ * @example
+ *
+ * ```ts
+ * client.multiSearch({
+ * queries: [
+ * { indexUid: 'movies', q: 'wonder' },
+ * { indexUid: 'books', q: 'flower' },
+ * ],
+ * })
+ * ```
+ *
+ * @param queries - Search queries
+ * @param config - Additional request configuration options
+ * @returns Promise containing the search responses
+ */
+
+ Client.prototype.multiSearch = function (queries, config) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "/multi-search";
+ return [4
+ /*yield*/, this.httpRequest.post(url, queries, undefined, config)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ }; ///
+ /// TASKS
+ ///
+
+ /**
+ * Get the list of all client tasks
+ *
+ * @param parameters - Parameters to browse the tasks
+ * @returns Promise returning all tasks
+ */
+
+ Client.prototype.getTasks = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
+ }
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.getTasks(parameters)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Get one task on the client scope
+ *
+ * @param taskUid - Task identifier
+ * @returns Promise returning a task
+ */
+
+ Client.prototype.getTask = function (taskUid) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.getTask(taskUid)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Wait for multiple tasks to be finished.
+ *
+ * @param taskUids - Tasks identifier
+ * @param waitOptions - Options on timeout and interval
+ * @returns Promise returning an array of tasks
+ */
+
+ Client.prototype.waitForTasks = function (taskUids, _a) {
+ var _b = _a === void 0 ? {} : _a,
+ _c = _b.timeOutMs,
+ timeOutMs = _c === void 0 ? 5000 : _c,
+ _d = _b.intervalMs,
+ intervalMs = _d === void 0 ? 50 : _d;
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_e) {
+ switch (_e.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.waitForTasks(taskUids, {
+ timeOutMs: timeOutMs,
+ intervalMs: intervalMs
+ })];
+ case 1:
+ return [2
+ /*return*/, _e.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Wait for a task to be finished.
+ *
+ * @param taskUid - Task identifier
+ * @param waitOptions - Options on timeout and interval
+ * @returns Promise returning an array of tasks
+ */
+
+ Client.prototype.waitForTask = function (taskUid, _a) {
+ var _b = _a === void 0 ? {} : _a,
+ _c = _b.timeOutMs,
+ timeOutMs = _c === void 0 ? 5000 : _c,
+ _d = _b.intervalMs,
+ intervalMs = _d === void 0 ? 50 : _d;
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_e) {
+ switch (_e.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.waitForTask(taskUid, {
+ timeOutMs: timeOutMs,
+ intervalMs: intervalMs
+ })];
+ case 1:
+ return [2
+ /*return*/, _e.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Cancel a list of enqueued or processing tasks.
+ *
+ * @param parameters - Parameters to filter the tasks.
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Client.prototype.cancelTasks = function (parameters) {
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.cancelTasks(parameters)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Delete a list of tasks.
+ *
+ * @param parameters - Parameters to filter the tasks.
+ * @returns Promise containing an EnqueuedTask
+ */
+
+ Client.prototype.deleteTasks = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
+ }
+ return __awaiter(this, void 0, void 0, function () {
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ return [4
+ /*yield*/, this.tasks.deleteTasks(parameters)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ }; ///
+ /// KEYS
+ ///
+
+ /**
+ * Get all API keys
+ *
+ * @param parameters - Parameters to browse the indexes
+ * @returns Promise returning an object with keys
+ */
+
+ Client.prototype.getKeys = function (parameters) {
+ if (parameters === void 0) {
+ parameters = {};
+ }
+ return __awaiter(this, void 0, void 0, function () {
+ var url, keys;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "keys";
+ return [4
+ /*yield*/, this.httpRequest.get(url, parameters)];
+ case 1:
+ keys = _a.sent();
+ keys.results = keys.results.map(function (key) {
+ return __assign(__assign({}, key), {
+ createdAt: new Date(key.createdAt),
+ updateAt: new Date(key.updateAt)
+ });
+ });
+ return [2
+ /*return*/, keys];
+ }
+ });
+ });
+ };
+ /**
+ * Get one API key
+ *
+ * @param keyOrUid - Key or uid of the API key
+ * @returns Promise returning a key
+ */
+
+ Client.prototype.getKey = function (keyOrUid) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "keys/".concat(keyOrUid);
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Create one API key
+ *
+ * @param options - Key options
+ * @returns Promise returning a key
+ */
+
+ Client.prototype.createKey = function (options) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "keys";
+ return [4
+ /*yield*/, this.httpRequest.post(url, options)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Update one API key
+ *
+ * @param keyOrUid - Key
+ * @param options - Key options
+ * @returns Promise returning a key
+ */
+
+ Client.prototype.updateKey = function (keyOrUid, options) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "keys/".concat(keyOrUid);
+ return [4
+ /*yield*/, this.httpRequest.patch(url, options)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Delete one API key
+ *
+ * @param keyOrUid - Key
+ * @returns
+ */
+
+ Client.prototype.deleteKey = function (keyOrUid) {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "keys/".concat(keyOrUid);
+ return [4
+ /*yield*/, this.httpRequest["delete"](url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ }; ///
+ /// HEALTH
+ ///
+
+ /**
+ * Checks if the server is healthy, otherwise an error will be thrown.
+ *
+ * @returns Promise returning an object with health details
+ */
+
+ Client.prototype.health = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "health";
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ };
+ /**
+ * Checks if the server is healthy, return true or false.
+ *
+ * @returns Promise returning a boolean
+ */
+
+ Client.prototype.isHealthy = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ _a.trys.push([0, 2,, 3]);
+ url = "health";
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ _a.sent();
+ return [2
+ /*return*/, true];
+ case 2:
+ _a.sent();
+ return [2
+ /*return*/, false];
+ case 3:
+ return [2
+ /*return*/];
+ }
+ });
+ });
+ }; ///
+ /// STATS
+ ///
- /**
- * Perform multiple search queries.
- *
- * It is possible to make multiple search queries on the same index or on
- * different ones
- *
- * @example
- *
- * ```ts
- * client.multiSearch({
- * queries: [
- * { indexUid: 'movies', q: 'wonder' },
- * { indexUid: 'books', q: 'flower' },
- * ],
- * })
- * ```
- *
- * @param queries - Search queries
- * @param config - Additional request configuration options
- * @returns Promise containing the search responses
- */
- }, {
- key: "multiSearch",
- value: function multiSearch(queries, config) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {
- var url;
- return _regeneratorRuntime().wrap(function _callee10$(_context10) {
- while (1) switch (_context10.prev = _context10.next) {
- case 0:
- url = "multi-search";
- _context10.next = 3;
- return this.httpRequest.post(url, queries, undefined, config);
- case 3:
- return _context10.abrupt("return", _context10.sent);
- case 4:
- case "end":
- return _context10.stop();
- }
- }, _callee10, this);
- }));
- } ///
- /// TASKS
- ///
+ /**
+ * Get the stats of all the database
+ *
+ * @returns Promise returning object of all the stats
+ */
- /**
- * Get the list of all client tasks
- *
- * @param parameters - Parameters to browse the tasks
- * @returns Promise returning all tasks
- */
- }, {
- key: "getTasks",
- value: function getTasks() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
- return _regeneratorRuntime().wrap(function _callee11$(_context11) {
- while (1) switch (_context11.prev = _context11.next) {
- case 0:
- _context11.next = 2;
- return this.tasks.getTasks(parameters);
- case 2:
- return _context11.abrupt("return", _context11.sent);
- case 3:
- case "end":
- return _context11.stop();
- }
- }, _callee11, this);
- }));
- }
- /**
- * Get one task on the client scope
- *
- * @param taskUid - Task identifier
- * @returns Promise returning a task
- */
- }, {
- key: "getTask",
- value: function getTask(taskUid) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee12() {
- return _regeneratorRuntime().wrap(function _callee12$(_context12) {
- while (1) switch (_context12.prev = _context12.next) {
- case 0:
- _context12.next = 2;
- return this.tasks.getTask(taskUid);
- case 2:
- return _context12.abrupt("return", _context12.sent);
- case 3:
- case "end":
- return _context12.stop();
- }
- }, _callee12, this);
- }));
- }
- /**
- * Wait for multiple tasks to be finished.
- *
- * @param taskUids - Tasks identifier
- * @param waitOptions - Options on timeout and interval
- * @returns Promise returning an array of tasks
- */
- }, {
- key: "waitForTasks",
- value: function waitForTasks(taskUids) {
- var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
- _ref$timeOutMs = _ref.timeOutMs,
- timeOutMs = _ref$timeOutMs === void 0 ? 5000 : _ref$timeOutMs,
- _ref$intervalMs = _ref.intervalMs,
- intervalMs = _ref$intervalMs === void 0 ? 50 : _ref$intervalMs;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee13() {
- return _regeneratorRuntime().wrap(function _callee13$(_context13) {
- while (1) switch (_context13.prev = _context13.next) {
- case 0:
- _context13.next = 2;
- return this.tasks.waitForTasks(taskUids, {
- timeOutMs: timeOutMs,
- intervalMs: intervalMs
- });
- case 2:
- return _context13.abrupt("return", _context13.sent);
- case 3:
- case "end":
- return _context13.stop();
- }
- }, _callee13, this);
- }));
- }
- /**
- * Wait for a task to be finished.
- *
- * @param taskUid - Task identifier
- * @param waitOptions - Options on timeout and interval
- * @returns Promise returning an array of tasks
- */
- }, {
- key: "waitForTask",
- value: function waitForTask(taskUid) {
- var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
- _ref2$timeOutMs = _ref2.timeOutMs,
- timeOutMs = _ref2$timeOutMs === void 0 ? 5000 : _ref2$timeOutMs,
- _ref2$intervalMs = _ref2.intervalMs,
- intervalMs = _ref2$intervalMs === void 0 ? 50 : _ref2$intervalMs;
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee14() {
- return _regeneratorRuntime().wrap(function _callee14$(_context14) {
- while (1) switch (_context14.prev = _context14.next) {
- case 0:
- _context14.next = 2;
- return this.tasks.waitForTask(taskUid, {
- timeOutMs: timeOutMs,
- intervalMs: intervalMs
- });
- case 2:
- return _context14.abrupt("return", _context14.sent);
- case 3:
- case "end":
- return _context14.stop();
- }
- }, _callee14, this);
- }));
- }
- /**
- * Cancel a list of enqueued or processing tasks.
- *
- * @param parameters - Parameters to filter the tasks.
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "cancelTasks",
- value: function cancelTasks(parameters) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee15() {
- return _regeneratorRuntime().wrap(function _callee15$(_context15) {
- while (1) switch (_context15.prev = _context15.next) {
- case 0:
- _context15.next = 2;
- return this.tasks.cancelTasks(parameters);
- case 2:
- return _context15.abrupt("return", _context15.sent);
- case 3:
- case "end":
- return _context15.stop();
- }
- }, _callee15, this);
- }));
- }
- /**
- * Delete a list of tasks.
- *
- * @param parameters - Parameters to filter the tasks.
- * @returns Promise containing an EnqueuedTask
- */
- }, {
- key: "deleteTasks",
- value: function deleteTasks() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee16() {
- return _regeneratorRuntime().wrap(function _callee16$(_context16) {
- while (1) switch (_context16.prev = _context16.next) {
- case 0:
- _context16.next = 2;
- return this.tasks.deleteTasks(parameters);
- case 2:
- return _context16.abrupt("return", _context16.sent);
- case 3:
- case "end":
- return _context16.stop();
- }
- }, _callee16, this);
- }));
- } ///
- /// KEYS
- ///
+ Client.prototype.getStats = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "stats";
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ }; ///
+ /// VERSION
+ ///
- /**
- * Get all API keys
- *
- * @param parameters - Parameters to browse the indexes
- * @returns Promise returning an object with keys
- */
- }, {
- key: "getKeys",
- value: function getKeys() {
- var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee17() {
- var url, keys;
- return _regeneratorRuntime().wrap(function _callee17$(_context17) {
- while (1) switch (_context17.prev = _context17.next) {
- case 0:
- url = "keys";
- _context17.next = 3;
- return this.httpRequest.get(url, parameters);
- case 3:
- keys = _context17.sent;
- keys.results = keys.results.map(function (key) {
- return Object.assign(Object.assign({}, key), {
- createdAt: new Date(key.createdAt),
- updatedAt: new Date(key.updatedAt)
- });
- });
- return _context17.abrupt("return", keys);
- case 6:
- case "end":
- return _context17.stop();
- }
- }, _callee17, this);
- }));
- }
- /**
- * Get one API key
- *
- * @param keyOrUid - Key or uid of the API key
- * @returns Promise returning a key
- */
- }, {
- key: "getKey",
- value: function getKey(keyOrUid) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee18() {
- var url;
- return _regeneratorRuntime().wrap(function _callee18$(_context18) {
- while (1) switch (_context18.prev = _context18.next) {
- case 0:
- url = "keys/".concat(keyOrUid);
- _context18.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context18.abrupt("return", _context18.sent);
- case 4:
- case "end":
- return _context18.stop();
- }
- }, _callee18, this);
- }));
- }
- /**
- * Create one API key
- *
- * @param options - Key options
- * @returns Promise returning a key
- */
- }, {
- key: "createKey",
- value: function createKey(options) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee19() {
- var url;
- return _regeneratorRuntime().wrap(function _callee19$(_context19) {
- while (1) switch (_context19.prev = _context19.next) {
- case 0:
- url = "keys";
- _context19.next = 3;
- return this.httpRequest.post(url, options);
- case 3:
- return _context19.abrupt("return", _context19.sent);
- case 4:
- case "end":
- return _context19.stop();
- }
- }, _callee19, this);
- }));
- }
- /**
- * Update one API key
- *
- * @param keyOrUid - Key
- * @param options - Key options
- * @returns Promise returning a key
- */
- }, {
- key: "updateKey",
- value: function updateKey(keyOrUid, options) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee20() {
- var url;
- return _regeneratorRuntime().wrap(function _callee20$(_context20) {
- while (1) switch (_context20.prev = _context20.next) {
- case 0:
- url = "keys/".concat(keyOrUid);
- _context20.next = 3;
- return this.httpRequest.patch(url, options);
- case 3:
- return _context20.abrupt("return", _context20.sent);
- case 4:
- case "end":
- return _context20.stop();
- }
- }, _callee20, this);
- }));
- }
- /**
- * Delete one API key
- *
- * @param keyOrUid - Key
- * @returns
- */
- }, {
- key: "deleteKey",
- value: function deleteKey(keyOrUid) {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee21() {
- var url;
- return _regeneratorRuntime().wrap(function _callee21$(_context21) {
- while (1) switch (_context21.prev = _context21.next) {
- case 0:
- url = "keys/".concat(keyOrUid);
- _context21.next = 3;
- return this.httpRequest.delete(url);
- case 3:
- return _context21.abrupt("return", _context21.sent);
- case 4:
- case "end":
- return _context21.stop();
- }
- }, _callee21, this);
- }));
- } ///
- /// HEALTH
- ///
+ /**
+ * Get the version of MeiliSearch
+ *
+ * @returns Promise returning object with version details
+ */
- /**
- * Checks if the server is healthy, otherwise an error will be thrown.
- *
- * @returns Promise returning an object with health details
- */
- }, {
- key: "health",
- value: function health() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee22() {
- var url;
- return _regeneratorRuntime().wrap(function _callee22$(_context22) {
- while (1) switch (_context22.prev = _context22.next) {
- case 0:
- url = "health";
- _context22.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context22.abrupt("return", _context22.sent);
- case 4:
- case "end":
- return _context22.stop();
- }
- }, _callee22, this);
- }));
- }
- /**
- * Checks if the server is healthy, return true or false.
- *
- * @returns Promise returning a boolean
- */
- }, {
- key: "isHealthy",
- value: function isHealthy() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee23() {
- var url;
- return _regeneratorRuntime().wrap(function _callee23$(_context23) {
- while (1) switch (_context23.prev = _context23.next) {
- case 0:
- _context23.prev = 0;
- url = "health";
- _context23.next = 4;
- return this.httpRequest.get(url);
- case 4:
- return _context23.abrupt("return", true);
- case 7:
- _context23.prev = 7;
- _context23.t0 = _context23["catch"](0);
- return _context23.abrupt("return", false);
- case 10:
- case "end":
- return _context23.stop();
- }
- }, _callee23, this, [[0, 7]]);
- }));
- } ///
- /// STATS
- ///
+ Client.prototype.getVersion = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "version";
+ return [4
+ /*yield*/, this.httpRequest.get(url)];
+ case 1:
+ return [2
+ /*return*/, _a.sent()];
+ }
+ });
+ });
+ }; ///
+ /// DUMPS
+ ///
- /**
- * Get the stats of all the database
- *
- * @returns Promise returning object of all the stats
- */
- }, {
- key: "getStats",
- value: function getStats() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee24() {
- var url;
- return _regeneratorRuntime().wrap(function _callee24$(_context24) {
- while (1) switch (_context24.prev = _context24.next) {
- case 0:
- url = "stats";
- _context24.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context24.abrupt("return", _context24.sent);
- case 4:
- case "end":
- return _context24.stop();
- }
- }, _callee24, this);
- }));
- } ///
- /// VERSION
- ///
+ /**
+ * Creates a dump
+ *
+ * @returns Promise returning object of the enqueued task
+ */
- /**
- * Get the version of MeiliSearch
- *
- * @returns Promise returning object with version details
- */
- }, {
- key: "getVersion",
- value: function getVersion() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee25() {
- var url;
- return _regeneratorRuntime().wrap(function _callee25$(_context25) {
- while (1) switch (_context25.prev = _context25.next) {
- case 0:
- url = "version";
- _context25.next = 3;
- return this.httpRequest.get(url);
- case 3:
- return _context25.abrupt("return", _context25.sent);
- case 4:
- case "end":
- return _context25.stop();
- }
- }, _callee25, this);
- }));
- } ///
- /// DUMPS
- ///
+ Client.prototype.createDump = function () {
+ return __awaiter(this, void 0, void 0, function () {
+ var url, task;
+ return __generator(this, function (_a) {
+ switch (_a.label) {
+ case 0:
+ url = "dumps";
+ return [4
+ /*yield*/, this.httpRequest.post(url)];
+ case 1:
+ task = _a.sent();
+ return [2
+ /*return*/, new EnqueuedTask(task)];
+ }
+ });
+ });
+ }; ///
+ /// TOKENS
+ ///
- /**
- * Creates a dump
- *
- * @returns Promise returning object of the enqueued task
- */
- }, {
- key: "createDump",
- value: function createDump() {
- return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee26() {
- var url, task;
- return _regeneratorRuntime().wrap(function _callee26$(_context26) {
- while (1) switch (_context26.prev = _context26.next) {
- case 0:
- url = "dumps";
- _context26.next = 3;
- return this.httpRequest.post(url);
- case 3:
- task = _context26.sent;
- return _context26.abrupt("return", new EnqueuedTask(task));
- case 5:
- case "end":
- return _context26.stop();
- }
- }, _callee26, this);
- }));
- } ///
- /// TOKENS
- ///
+ /**
+ * Generate a tenant token
+ *
+ * @param apiKeyUid - The uid of the api key used as issuer of the token.
+ * @param searchRules - Search rules that are applied to every search.
+ * @param options - Token options to customize some aspect of the token.
+ * @returns The token in JWT format.
+ */
- /**
- * Generate a tenant token
- *
- * @param apiKeyUid - The uid of the api key used as issuer of the token.
- * @param searchRules - Search rules that are applied to every search.
- * @param options - Token options to customize some aspect of the token.
- * @returns The token in JWT format.
- */
- }, {
- key: "generateTenantToken",
- value: function generateTenantToken(_apiKeyUid, _searchRules, _options) {
- var error = new Error();
- throw new Error("Meilisearch: failed to generate a tenant token. Generation of a token only works in a node environment \n ".concat(error.stack, "."));
- }
- }]);
+ Client.prototype.generateTenantToken = function (_apiKeyUid, _searchRules, _options) {
+ var error = new Error();
+ throw new Error("Meilisearch: failed to generate a tenant token. Generation of a token only works in a node environment \n ".concat(error.stack, "."));
+ };
return Client;
}();
- var MeiliSearch = /*#__PURE__*/function (_Client) {
- _inherits(MeiliSearch, _Client);
- var _super = _createSuper(MeiliSearch);
+ var MeiliSearch = /** @class */
+ function (_super) {
+ __extends(MeiliSearch, _super);
function MeiliSearch(config) {
- _classCallCheck(this, MeiliSearch);
- return _super.call(this, config);
+ return _super.call(this, config) || this;
}
- return _createClass(MeiliSearch);
+ return MeiliSearch;
}(Client);
- exports.ContentTypeEnum = ContentTypeEnum;
exports.Index = Index;
exports.MatchingStrategies = MatchingStrategies;
exports.MeiliSearch = MeiliSearch;
@@ -4321,7 +3200,6 @@
exports["default"] = MeiliSearch;
exports.httpErrorHandler = httpErrorHandler;
exports.httpResponseErrorHandler = httpResponseErrorHandler;
- exports.versionErrorHintMessage = versionErrorHintMessage;
Object.defineProperty(exports, '__esModule', {
value: true
});
@@ -4391,7 +3269,7 @@
/**
* @param {ResponseCacher} cache
*/
- function SearchResolver(client, cache) {
+ function SearchResolver(client, cache, handleResults) {
return {
multiSearch: function (searchQueries, instantSearchPagination) {
return __awaiter(this, void 0, void 0, function () {
@@ -4402,8 +3280,12 @@
key = cache.formatKey([searchQueries]);
cachedResponse = cache.getEntry(key);
// Check if specific request is already cached with its associated search response.
- if (cachedResponse)
+ if (cachedResponse) {
+ if (handleResults) {
+ return [2 /*return*/, handleResults(cachedResponse, searchQueries)];
+ }
return [2 /*return*/, cachedResponse];
+ }
return [4 /*yield*/, client.multiSearch({
queries: searchQueries
})];
@@ -4414,6 +3296,9 @@
pagination: instantSearchPagination[index] || {} })); });
// Cache response
cache.setEntry(key, responseWithPagination);
+ if (handleResults) {
+ return [2 /*return*/, handleResults(responseWithPagination, searchQueries)];
+ }
return [2 /*return*/, responseWithPagination];
}
});
@@ -4457,42 +3342,60 @@
return filter;
}
+ function removeDuplicate(key) {
+ var indexes = [];
+ return function (object) {
+ if (indexes.includes(object[key])) {
+ return false;
+ }
+ indexes.push(object[key]);
+ return true;
+ };
+ }
+
/**
- * Transform InstantSearch filter to Meilisearch compatible filter format.
- * Change sign from `:` to `=`
- * "facet:facetValue" becomes "facet=facetValue"
- *
- * Wrap both the facet and its facet value between quotes.
- * This avoid formating issues on facets containing multiple words.
- *
- * 'My facet:My facet value' becomes '"My facet":"My facet value"'
- *
- * @param {string} filter?
- * @returns {Filter}
+ * @param {any} str
+ * @returns {boolean}
+ */
+ /**
+ * @param {string} filter
+ * @returns {string}
+ */
+ function replaceColonByEqualSign(filter) {
+ // will only change first occurence of `:`
+ return filter.replace(/:(.*)/i, '="$1"');
+ }
+ /**
+ * @param {any[]} arr
+ * @returns {string}
*/
- function transformFilter(filter) {
- return filter.replace(/(.*):(.*)/i, '"$1"="$2"');
+ function stringifyArray(arr) {
+ return arr.reduce(function (acc, curr) {
+ return (acc += JSON.stringify(curr));
+ }, '');
}
+
/**
- * Itterate over all filters.
- * Return the filters in a Meilisearch compatible format.
+ * Transform InstantSearch filter to Meilisearch filter.
+ * Change sign from `:` to `=` in nested filter object.
+ * example: [`genres:comedy`] becomes [`genres=comedy`]
*
* @param {SearchContext['facetFilters']} filters?
* @returns {Filter}
*/
- function transformFilters(filters) {
+ function transformFilter(filters) {
if (typeof filters === 'string') {
- return transformFilter(filters);
+ return replaceColonByEqualSign(filters);
}
else if (Array.isArray(filters))
return filters
.map(function (filter) {
if (Array.isArray(filter))
return filter
- .map(function (nestedFilter) { return transformFilter(nestedFilter); })
+ .map(function (nestedFilter) { return replaceColonByEqualSign(nestedFilter); })
.filter(function (elem) { return elem; });
else {
- return transformFilter(filter);
+ return replaceColonByEqualSign(filter);
}
})
.filter(function (elem) { return elem; });
@@ -4547,8 +3450,8 @@
* @returns {Filter}
*/
function adaptFilters(filters, numericFilters, facetFilters) {
- var transformedFilter = transformFilters(facetFilters || []);
- var transformedNumericFilter = transformFilters(numericFilters || []);
+ var transformedFilter = transformFilter(facetFilters || []);
+ var transformedNumericFilter = transformFilter(numericFilters || []);
return mergeFilters(transformedFilter, transformedNumericFilter, filters || '');
}
@@ -4726,31 +3629,6 @@
return meilisearchParams.getParams();
}
- function removeDuplicate(key) {
- var indexes = [];
- return function (object) {
- if (indexes.includes(object[key])) {
- return false;
- }
- indexes.push(object[key]);
- return true;
- };
- }
-
- /**
- * @param {any} str
- * @returns {boolean}
- */
- /**
- * @param {any[]} arr
- * @returns {string}
- */
- function stringifyArray(arr) {
- return arr.reduce(function (acc, curr) {
- return (acc += JSON.stringify(curr));
- }, '');
- }
-
/**
* Stringify values following instantsearch practices.
*
@@ -5005,29 +3883,6 @@
return adaptedSearchResult;
}
- /**
- * Split sort string into an array.
- *
- * Example:
- * '_geoPoint(37.8153, -122.4784):asc,title:asc,description:desc'
- *
- * becomes:
- * [
- * '_geoPoint(37.8153, -122.4784):asc',
- * 'title:asc',
- * 'description:desc',
- * ]
- *
- * @param {string} sortStr
- * @returns {string[]}
- */
- function splitSortString(sortStr) {
- if (!sortStr)
- return [];
- var sortRules = sortStr.split(/,(?=\w+:(?:asc|desc))/);
- return sortRules;
- }
-
/**
* Create the current state of the pagination
*
@@ -5044,43 +3899,29 @@
};
}
- function separateIndexFromSortRules(indexName) {
- var colonIndex = indexName.indexOf(':');
- if (colonIndex === -1) {
- return {
- indexUid: indexName,
- sortBy: ''
- };
- }
- return {
- indexUid: indexName.substring(0, colonIndex),
- sortBy: indexName.substring(colonIndex + 1)
- };
- }
/**
- * @param {AlgoliaMultipleQueriesQuery} searchRequest
- * @param {Context} options
- * @returns {SearchContext}
+ * @param {string} rawSort
+ * @returns {string[]}
*/
- function createSearchContext(searchRequest, options) {
- var query = searchRequest.query, indexName = searchRequest.indexName, instantSearchParams = searchRequest.params;
- // Split index name and possible sorting rules
- var _a = separateIndexFromSortRules(indexName), indexUid = _a.indexUid, sortBy = _a.sortBy;
- var paginationState = createPaginationState(options.finitePagination, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.hitsPerPage, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.page);
- var searchContext = __assign(__assign(__assign(__assign({}, options), { query: query }), instantSearchParams), { sort: splitSortString(sortBy), indexUid: indexUid, pagination: paginationState, placeholderSearch: options.placeholderSearch !== false, keepZeroFacets: !!options.keepZeroFacets });
- return searchContext;
+ function createSortState(rawSort) {
+ return rawSort
+ .split(',')
+ .map(function (sort) { return sort.trim(); })
+ .filter(function (sort) { return !!sort; });
}
+
/**
* @param {AlgoliaMultipleQueriesQuery} searchRequest
* @param {Context} options
* @returns {SearchContext}
*/
- function createFacetSearchContext(searchRequest, options) {
+ function createSearchContext(searchRequest, options) {
// Split index name and possible sorting rules
- var _a = separateIndexFromSortRules(searchRequest.indexName), indexUid = _a.indexUid, sortBy = _a.sortBy;
+ var _a = searchRequest.indexName.split(':'), indexUid = _a[0], sortByArray = _a.slice(1);
var instantSearchParams = searchRequest.params;
var paginationState = createPaginationState(options.finitePagination, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.hitsPerPage, instantSearchParams === null || instantSearchParams === void 0 ? void 0 : instantSearchParams.page);
- var searchContext = __assign(__assign(__assign({}, options), instantSearchParams), { sort: splitSortString(sortBy), indexUid: indexUid, pagination: paginationState, placeholderSearch: options.placeholderSearch !== false, keepZeroFacets: !!options.keepZeroFacets });
+ var sortState = createSortState(sortByArray.join(':'));
+ var searchContext = __assign(__assign(__assign({}, options), instantSearchParams), { sort: sortState, indexUid: indexUid, pagination: paginationState, placeholderSearch: options.placeholderSearch !== false, keepZeroFacets: !!options.keepZeroFacets });
return searchContext;
}
@@ -5159,15 +4000,8 @@
});
});
}
- function fillMissingFacets(initialFacetDistribution, meilisearchResults) {
- for (var _i = 0, meilisearchResults_1 = meilisearchResults; _i < meilisearchResults_1.length; _i++) {
- var searchResult = meilisearchResults_1[_i];
- initialFacetDistribution[searchResult.indexUid] = __assign(__assign({}, (searchResult.facetDistribution || {})), (initialFacetDistribution[searchResult.indexUid] || {}));
- }
- return initialFacetDistribution;
- }
- var PACKAGE_VERSION = '0.13.6';
+ var PACKAGE_VERSION = '0.13.0';
var constructClientAgents = function (clientAgents) {
if (clientAgents === void 0) { clientAgents = []; }
@@ -5204,7 +4038,7 @@
var meilisearchClient = new meilisearch_umd.MeiliSearch(meilisearchConfig);
var searchCache = SearchCache();
// create search resolver with included cache
- var searchResolver = SearchResolver(meilisearchClient, searchCache);
+ var searchResolver = SearchResolver(meilisearchClient, searchCache, instantMeiliSearchOptions.handleResults);
var initialFacetDistribution = {};
var instantMeilisearchConfig = getInstantMeilisearchConfig(instantMeiliSearchOptions);
return {
@@ -5240,13 +4074,9 @@
case 1:
initialFacetDistribution = _a.sent();
return [4 /*yield*/, searchResolver.multiSearch(meilisearchRequests, instantSearchPagination // Create issue on pagination
- )
- // Fill the missing facet values if keepZeroFacets is true
- ];
+ )];
case 2:
meilisearchResults = _a.sent();
- // Fill the missing facet values if keepZeroFacets is true
- initialFacetDistribution = fillMissingFacets(initialFacetDistribution, meilisearchResults);
instantSearchResponse = adaptSearchResults(meilisearchResults, initialFacetDistribution, instantMeilisearchConfig);
return [2 /*return*/, instantSearchResponse];
case 3:
@@ -5258,41 +4088,15 @@
});
});
},
- searchForFacetValues: function (requests) {
+ searchForFacetValues: function (_) {
return __awaiter(this, void 0, void 0, function () {
- var results, _i, requests_1, request, searchContext, meilisearchSearchQuery, meilisearchRequest, meilisearchResponse, facetHits, result;
return __generator(this, function (_a) {
switch (_a.label) {
- case 0:
- results = [];
- _i = 0, requests_1 = requests;
- _a.label = 1;
- case 1:
- if (!(_i < requests_1.length)) return [3 /*break*/, 4];
- request = requests_1[_i];
- searchContext = createFacetSearchContext(request, instantMeiliSearchOptions);
- meilisearchSearchQuery = adaptSearchParams(searchContext);
- meilisearchRequest = __assign(__assign({}, meilisearchSearchQuery), { facetQuery: request.params.facetQuery, facetName: request.params.facetName });
- delete meilisearchRequest.indexUid;
- return [4 /*yield*/, meilisearchClient
- .index(searchContext.indexUid)
- .searchForFacetValues(meilisearchRequest)];
- case 2:
- meilisearchResponse = _a.sent();
- facetHits = meilisearchResponse.facetHits.map(function (facetHit) { return (__assign(__assign({}, facetHit), {
- // not currently supported
- highlighted: facetHit.value })); });
- result = {
- facetHits: facetHits,
- exhaustiveFacetsCount: false,
- processingTimeMS: meilisearchResponse.processingTimeMs
- };
- results.push(result);
- _a.label = 3;
- case 3:
- _i++;
- return [3 /*break*/, 1];
- case 4: return [2 /*return*/, results];
+ case 0: return [4 /*yield*/, new Promise(function (resolve, reject) {
+ reject(new Error('SearchForFacetValues is not compatible with Meilisearch'));
+ resolve([]); // added here to avoid compilation error
+ })];
+ case 1: return [2 /*return*/, _a.sent()];
}
});
});
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.min.js b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.min.js
index 561bff8..dc13fd8 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.min.js
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.min.js
@@ -1,4 +1,2 @@
-!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("cross-fetch/polyfill")):"function"==typeof define&&define.amd?define(["exports","cross-fetch/polyfill"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).window=t.window||{})}(this,(function(t){"use strict";var e=function(){return e=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var i in e=arguments[r])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},e.apply(this,arguments)};function r(t,e,r,n){return new(r||(r=Promise))((function(i,s){function a(t){try{o(n.next(t))}catch(t){s(t)}}function u(t){try{o(n.throw(t))}catch(t){s(t)}}function o(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(a,u)}o((n=n.apply(t,e||[])).next())}))}function n(t,e){var r,n,i,s,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function u(u){return function(o){return function(u){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,u[0]&&(a=0)),a;)try{if(r=1,n&&(i=2&u[0]?n.return:u[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,u[1])).done)return i;switch(n=0,i&&(u=[2&u[0],i.value]),u[0]){case 0:case 1:i=u;break;case 4:return a.label++,{value:u[1],done:!1};case 5:a.label++,n=u[1],u=[0];continue;case 7:u=a.ops.pop(),a.trys.pop();continue;default:if(!(i=a.trys,(i=i.length>0&&i[i.length-1])||6!==u[0]&&2!==u[0])){a=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]<i[3])){a.label=u[1];break}if(6===u[0]&&a.label<i[1]){a.label=i[1],i=u;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(u);break}i[2]&&a.ops.pop(),a.trys.pop();continue}u=e.call(t,a)}catch(t){u=[6,t],n=0}finally{r=i=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,o])}}}function i(t,e,r){if(r||2===arguments.length)for(var n,i=0,s=e.length;i<s;i++)!n&&i in e||(n||(n=Array.prototype.slice.call(e,0,i)),n[i]=e[i]);return t.concat(n||Array.prototype.slice.call(e))}"function"==typeof SuppressedError&&SuppressedError;"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var s=function(t){var e={exports:{}};return t(e,e.exports),e.exports}((function(t,e){!function(t){var e={ALL:"all",LAST:"last"},r={JSON:"application/json",CSV:"text/csv",NDJSON:"application/x-ndjson"};function n(){
-/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
-n=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},s=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function o(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{o({},"")}catch(t){o=function(t,e,r){return t[e]=r}}function c(t,e,r,n){var i=e&&e.prototype instanceof f?e:f,s=Object.create(i.prototype),a=new A(n||[]);return s._invoke=function(t,e,r){var n="suspendedStart";return function(i,s){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw s;return S()}for(r.method=i,r.arg=s;;){var a=r.delegate;if(a){var u=m(a,r);if(u){if(u===h)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var o=d(t,e,r);if("normal"===o.type){if(n=r.done?"completed":"suspendedYield",o.arg===h)continue;return{value:o.arg,done:r.done}}"throw"===o.type&&(n="completed",r.method="throw",r.arg=o.arg)}}}(t,r,a),s}function d(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var h={};function f(){}function p(){}function v(){}var l={};o(l,s,(function(){return this}));var g=Object.getPrototypeOf,y=g&&g(g(T([])));y&&y!==e&&r.call(y,s)&&(l=y);var w=v.prototype=f.prototype=Object.create(l);function x(t){["next","throw","return"].forEach((function(e){o(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function n(i,s,a,u){var o=d(t[i],t,s);if("throw"!==o.type){var c=o.arg,h=c.value;return h&&"object"==typeof h&&r.call(h,"__await")?e.resolve(h.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):e.resolve(h).then((function(t){c.value=t,a(c)}),(function(t){return n("throw",t,a,u)}))}u(o.arg)}var i;this._invoke=function(t,r){function s(){return new e((function(e,i){n(t,r,e,i)}))}return i=i?i.then(s,s):s()}}function m(t,e){var r=t.iterator[e.method];if(void 0===r){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=void 0,m(t,e),"throw"===e.method))return h;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return h}var n=d(r,t.iterator,e.arg);if("throw"===n.type)return e.method="throw",e.arg=n.arg,e.delegate=null,h;var i=n.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,h):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,h)}function k(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function q(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function A(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(k,this),this.reset(!0)}function T(t){if(t){var e=t[s];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return i.next=i}}return{next:S}}function S(){return{value:void 0,done:!0}}return p.prototype=v,o(w,"constructor",v),o(v,"constructor",p),p.displayName=o(v,u,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,o(t,u,"GeneratorFunction")),t.prototype=Object.create(w),t},t.awrap=function(t){return{__await:t}},x(b.prototype),o(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,i,s){void 0===s&&(s=Promise);var a=new b(c(e,r,n,i),s);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},x(w),o(w,u,"Generator"),o(w,s,(function(){return this})),o(w,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=[];for(var r in t)e.push(r);return e.reverse(),function r(){for(;e.length;){var n=e.pop();if(n in t)return r.value=n,r.done=!1,r}return r.done=!0,r}},t.values=T,A.prototype={constructor:A,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(q),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var i=this.tryEntries.length-1;i>=0;--i){var s=this.tryEntries[i],a=s.completion;if("root"===s.tryLoc)return n("end");if(s.tryLoc<=this.prev){var u=r.call(s,"catchLoc"),o=r.call(s,"finallyLoc");if(u&&o){if(this.prev<s.catchLoc)return n(s.catchLoc,!0);if(this.prev<s.finallyLoc)return n(s.finallyLoc)}else if(u){if(this.prev<s.catchLoc)return n(s.catchLoc,!0)}else{if(!o)throw new Error("try statement without catch or finally");if(this.prev<s.finallyLoc)return n(s.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var s=i;break}}s&&("break"===t||"continue"===t)&&s.tryLoc<=e&&e<=s.finallyLoc&&(s=null);var a=s?s.completion:{};return a.type=t,a.arg=e,s?(this.method="next",this.next=s.finallyLoc,h):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),h},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),q(r),h}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;q(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:T(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),h}},t}function i(t){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i(t)}function s(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function a(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function u(t,e,r){return e&&a(t.prototype,e),r&&a(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function o(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function c(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&h(t,e)}function d(t){return d=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},d(t)}function h(t,e){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},h(t,e)}function f(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}function p(t,e,r){return p=f()?Reflect.construct.bind():function(t,e,r){var n=[null];n.push.apply(n,e);var i=new(Function.bind.apply(t,n));return r&&h(i,r.prototype),i},p.apply(null,arguments)}function v(t){return-1!==Function.toString.call(t).indexOf("[native code]")}function l(t){var e="function"==typeof Map?new Map:void 0;return l=function(t){if(null===t||!v(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,r)}function r(){return p(t,arguments,d(this).constructor)}return r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),h(r,t)},l(t)}function g(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function y(t,e){if(e&&("object"==typeof e||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return g(t)}function w(t){var e=f();return function(){var r,n=d(t);if(e){var i=d(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return y(this,r)}}function x(t,e){return b(t)||m(t,e)||k(t,e)||A()}function b(t){if(Array.isArray(t))return t}function m(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,i,s=[],a=!0,u=!1;try{for(r=r.call(t);!(a=(n=r.next()).done)&&(s.push(n.value),!e||s.length!==e);a=!0);}catch(t){u=!0,i=t}finally{try{a||null==r.return||r.return()}finally{if(u)throw i}}return s}}function k(t,e){if(t){if("string"==typeof t)return q(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?q(t,e):void 0}}function q(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function A(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function T(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=k(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,i=function(){};return{s:i,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,a=!0,u=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){u=!0,s=t},f:function(){try{a||null==r.return||r.return()}finally{if(u)throw s}}}}function S(t,e,r,n){function i(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,s){function a(t){try{o(n.next(t))}catch(t){s(t)}}function u(t){try{o(n.throw(t))}catch(t){s(t)}}function o(t){t.done?r(t.value):i(t.value).then(a,u)}o((n=n.apply(t,e||[])).next())}))}var R=function(t){c(r,t);var e=w(r);function r(t,n,i,a){var u,o,c,d;return s(this,r),u=e.call(this,t),Object.setPrototypeOf(g(u),r.prototype),u.name="MeiliSearchCommunicationError",n instanceof Response&&(u.message=n.statusText,u.statusCode=n.status),n instanceof Error&&(u.errno=n.errno,u.code=n.code),a?(u.stack=a,u.stack=null===(o=u.stack)||void 0===o?void 0:o.replace(/(TypeError|FetchError)/,u.name),u.stack=null===(c=u.stack)||void 0===c?void 0:c.replace("Failed to fetch","request to ".concat(i," failed, reason: connect ECONNREFUSED")),u.stack=null===(d=u.stack)||void 0===d?void 0:d.replace("Not Found","Not Found: ".concat(i))):Error.captureStackTrace&&Error.captureStackTrace(g(u),r),u}return u(r)}(l(Error)),O=function(t){c(r,t);var e=w(r);function r(t,n){var i;return s(this,r),i=e.call(this,t.message),Object.setPrototypeOf(g(i),r.prototype),i.name="MeiliSearchApiError",i.code=t.code,i.type=t.type,i.link=t.link,i.message=t.message,i.httpStatus=n,Error.captureStackTrace&&Error.captureStackTrace(g(i),r),i}return u(r)}(l(Error));function j(t){return S(this,void 0,void 0,n().mark((function e(){var r;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.ok){e.next=11;break}return e.prev=1,e.next=4,t.json();case 4:r=e.sent,e.next=10;break;case 7:throw e.prev=7,e.t0=e.catch(1),new R(t.statusText,t,t.url);case 10:throw new O(r,t.status);case 11:return e.abrupt("return",t);case 12:case"end":return e.stop()}}),e,null,[[1,7]])})))}function P(t,e,r){if("MeiliSearchApiError"!==t.name)throw new R(t.message,t,r,e);throw t}var E=function(t){c(r,t);var e=w(r);function r(t){var n;return s(this,r),n=e.call(this,t),Object.setPrototypeOf(g(n),r.prototype),n.name="MeiliSearchError",Error.captureStackTrace&&Error.captureStackTrace(g(n),r),n}return u(r)}(l(Error)),D=function(t){c(r,t);var e=w(r);function r(t){var n;return s(this,r),n=e.call(this,t),Object.setPrototypeOf(g(n),r.prototype),n.name="MeiliSearchTimeOutError",Error.captureStackTrace&&Error.captureStackTrace(g(n),r),n}return u(r)}(l(Error));function M(t,e){return"".concat(t,"\nHint: It might not be working because maybe you're not up to date with the Meilisearch version that ").concat(e," call requires.")}function F(t){return Object.entries(t).reduce((function(t,e){var r=x(e,2),n=r[0],i=r[1];return void 0!==i&&(t[n]=i),t}),{})}function _(t){return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new Promise((function(e){return setTimeout(e,t)}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})))}function C(t){return t.startsWith("https://")||t.startsWith("http://")?t:"http://".concat(t)}function L(t){return t.endsWith("/")||(t+="/"),t}var I="0.35.0";function U(t){return Object.keys(t).reduce((function(e,r){var n=t[r];return void 0===n?e:Array.isArray(n)?Object.assign(Object.assign({},e),o({},r,n.join(","))):n instanceof Date?Object.assign(Object.assign({},e),o({},r,n.toISOString())):Object.assign(Object.assign({},e),o({},r,n))}),{})}function N(t){try{return t=L(t=C(t))}catch(t){throw new E("The provided host is not valid.")}}function K(t){if(Array.isArray(t))return t.reduce((function(t,e){return t[e[0]]=e[1],t}),{});if("has"in t){var e={};return t.forEach((function(t,r){return e[r]=t})),e}return Object.assign({},t)}function B(t){var e,r,n="X-Meilisearch-Client",i="Meilisearch JavaScript (v".concat(I,")"),s="Content-Type",a="Authorization",u=K(null!==(r=null===(e=t.requestConfig)||void 0===e?void 0:e.headers)&&void 0!==r?r:{});if(t.apiKey&&!u[a]&&(u[a]="Bearer ".concat(t.apiKey)),u[s]||(u["Content-Type"]="application/json"),t.clientAgents&&Array.isArray(t.clientAgents)){var o=t.clientAgents.concat(i);u[n]=o.join(" ; ")}else{if(t.clientAgents&&!Array.isArray(t.clientAgents))throw new E('Meilisearch: The header "'.concat(n,'" should be an array of string(s).\n'));u[n]=i}return u}var H=function(){function t(e){s(this,t),this.headers=B(e),this.requestConfig=e.requestConfig,this.httpClient=e.httpClient;try{var r=N(e.host);this.url=new URL(r)}catch(t){throw new E("The provided host is not valid.")}}return u(t,[{key:"request",value:function(t){var e,r=t.method,i=t.url,s=t.params,a=t.body,u=t.config,o=void 0===u?{}:u;return S(this,void 0,void 0,n().mark((function t(){var u,c,d,h,f,p,v,l;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(u=new URL(i,this.url),s&&(c=new URLSearchParams,Object.keys(s).filter((function(t){return null!==s[t]})).map((function(t){return c.set(t,s[t])})),u.search=c.toString()),(null===(e=o.headers)||void 0===e?void 0:e["Content-Type"])||(a=JSON.stringify(a)),d=Object.assign(Object.assign({},this.headers),o.headers),t.prev=5,h=this.httpClient?this.httpClient:fetch,f=h(u.toString(),Object.assign(Object.assign(Object.assign({},o),this.requestConfig),{method:r,body:a,headers:d})),!this.httpClient){t.next=12;break}return t.next=11,f;case 11:return t.abrupt("return",t.sent);case 12:return t.next=14,f.then((function(t){return j(t)}));case 14:return p=t.sent,t.next=17,p.json().catch((function(){}));case 17:return v=t.sent,t.abrupt("return",v);case 21:t.prev=21,t.t0=t.catch(5),l=t.t0.stack,P(t.t0,l,u.toString());case 25:case"end":return t.stop()}}),t,this,[[5,21]])})))}},{key:"get",value:function(t,e,r){return S(this,void 0,void 0,n().mark((function i(){return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this.request({method:"GET",url:t,params:e,config:r});case 2:return n.abrupt("return",n.sent);case 3:case"end":return n.stop()}}),i,this)})))}},{key:"post",value:function(t,e,r,i){return S(this,void 0,void 0,n().mark((function s(){return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this.request({method:"POST",url:t,body:e,params:r,config:i});case 2:return n.abrupt("return",n.sent);case 3:case"end":return n.stop()}}),s,this)})))}},{key:"put",value:function(t,e,r,i){return S(this,void 0,void 0,n().mark((function s(){return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this.request({method:"PUT",url:t,body:e,params:r,config:i});case 2:return n.abrupt("return",n.sent);case 3:case"end":return n.stop()}}),s,this)})))}},{key:"patch",value:function(t,e,r,i){return S(this,void 0,void 0,n().mark((function s(){return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this.request({method:"PATCH",url:t,body:e,params:r,config:i});case 2:return n.abrupt("return",n.sent);case 3:case"end":return n.stop()}}),s,this)})))}},{key:"delete",value:function(t,e,r,i){return S(this,void 0,void 0,n().mark((function s(){return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this.request({method:"DELETE",url:t,body:e,params:r,config:i});case 2:return n.abrupt("return",n.sent);case 3:case"end":return n.stop()}}),s,this)})))}}]),t}(),G=u((function t(e){s(this,t),this.taskUid=e.taskUid,this.indexUid=e.indexUid,this.status=e.status,this.type=e.type,this.enqueuedAt=new Date(e.enqueuedAt)})),J=u((function t(e){s(this,t),this.indexUid=e.indexUid,this.status=e.status,this.type=e.type,this.uid=e.uid,this.details=e.details,this.canceledBy=e.canceledBy,this.error=e.error,this.duration=e.duration,this.startedAt=new Date(e.startedAt),this.enqueuedAt=new Date(e.enqueuedAt),this.finishedAt=new Date(e.finishedAt)})),W=function(){function t(e){s(this,t),this.httpRequest=new H(e)}return u(t,[{key:"getTask",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="tasks/".concat(t),e.next=3,this.httpRequest.get(r);case 3:return i=e.sent,e.abrupt("return",new J(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"getTasks",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="tasks",e.next=3,this.httpRequest.get(r,U(t));case 3:return i=e.sent,e.abrupt("return",Object.assign(Object.assign({},i),{results:i.results.map((function(t){return new J(t)}))}));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"waitForTask",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.timeOutMs,i=void 0===r?5e3:r,s=e.intervalMs,a=void 0===s?50:s;return S(this,void 0,void 0,n().mark((function e(){var r,s;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=Date.now();case 1:if(!(Date.now()-r<i)){e.next=11;break}return e.next=4,this.getTask(t);case 4:if(s=e.sent,["enqueued","processing"].includes(s.status)){e.next=7;break}return e.abrupt("return",s);case 7:return e.next=9,_(a);case 9:e.next=1;break;case 11:throw new D("timeout of ".concat(i,"ms has exceeded on process ").concat(t," when waiting a task to be resolved."));case 12:case"end":return e.stop()}}),e,this)})))}},{key:"waitForTasks",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.timeOutMs,i=void 0===r?5e3:r,s=e.intervalMs,a=void 0===s?50:s;return S(this,void 0,void 0,n().mark((function e(){var r,s,u,o,c;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=[],s=T(t),e.prev=2,s.s();case 4:if((u=s.n()).done){e.next=12;break}return o=u.value,e.next=8,this.waitForTask(o,{timeOutMs:i,intervalMs:a});case 8:c=e.sent,r.push(c);case 10:e.next=4;break;case 12:e.next=17;break;case 14:e.prev=14,e.t0=e.catch(2),s.e(e.t0);case 17:return e.prev=17,s.f(),e.finish(17);case 20:return e.abrupt("return",r);case 21:case"end":return e.stop()}}),e,this,[[2,14,17,20]])})))}},{key:"cancelTasks",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="tasks/cancel",e.next=3,this.httpRequest.post(r,{},U(t));case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"deleteTasks",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="tasks",e.next=3,this.httpRequest.delete(r,{},U(t));case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}}]),t}(),Z=function(){function t(e,r,n){s(this,t),this.uid=r,this.primaryKey=n,this.httpRequest=new H(e),this.tasks=new W(e)}return u(t,[{key:"search",value:function(t,e,r){return S(this,void 0,void 0,n().mark((function i(){var s;return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return s="indexes/".concat(this.uid,"/search"),n.next=3,this.httpRequest.post(s,F(Object.assign({q:t},e)),void 0,r);case 3:return n.abrupt("return",n.sent);case 4:case"end":return n.stop()}}),i,this)})))}},{key:"searchGet",value:function(t,e,r){var i,s,a,u,o,c,d;return S(this,void 0,void 0,n().mark((function h(){var f,p,v;return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return f="indexes/".concat(this.uid,"/search"),p=function(t){if("string"==typeof t)return t;if(Array.isArray(t))throw new E("The filter query parameter should be in string format when using searchGet")},v=Object.assign(Object.assign({q:t},e),{filter:p(null==e?void 0:e.filter),sort:null===(i=null==e?void 0:e.sort)||void 0===i?void 0:i.join(","),facets:null===(s=null==e?void 0:e.facets)||void 0===s?void 0:s.join(","),attributesToRetrieve:null===(a=null==e?void 0:e.attributesToRetrieve)||void 0===a?void 0:a.join(","),attributesToCrop:null===(u=null==e?void 0:e.attributesToCrop)||void 0===u?void 0:u.join(","),attributesToHighlight:null===(o=null==e?void 0:e.attributesToHighlight)||void 0===o?void 0:o.join(","),vector:null===(c=null==e?void 0:e.vector)||void 0===c?void 0:c.join(","),attributesToSearchOn:null===(d=null==e?void 0:e.attributesToSearchOn)||void 0===d?void 0:d.join(",")}),n.next=5,this.httpRequest.get(f,F(v),r);case 5:return n.abrupt("return",n.sent);case 6:case"end":return n.stop()}}),h,this)})))}},{key:"searchForFacetValues",value:function(t,e){return S(this,void 0,void 0,n().mark((function r(){var i;return n().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return i="indexes/".concat(this.uid,"/facet-search"),r.next=3,this.httpRequest.post(i,F(t),void 0,e);case 3:return r.abrupt("return",r.sent);case 4:case"end":return r.stop()}}),r,this)})))}},{key:"getRawInfo",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid),t.next=3,this.httpRequest.get(e);case 3:return r=t.sent,this.primaryKey=r.primaryKey,this.updatedAt=new Date(r.updatedAt),this.createdAt=new Date(r.createdAt),t.abrupt("return",r);case 8:case"end":return t.stop()}}),t,this)})))}},{key:"fetchInfo",value:function(){return S(this,void 0,void 0,n().mark((function t(){return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.getRawInfo();case 2:return t.abrupt("return",this);case 3:case"end":return t.stop()}}),t,this)})))}},{key:"fetchPrimaryKey",value:function(){return S(this,void 0,void 0,n().mark((function t(){return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.getRawInfo();case 2:return this.primaryKey=t.sent.primaryKey,t.abrupt("return",this.primaryKey);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"update",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid),e.next=3,this.httpRequest.patch(r,t);case 3:return(i=e.sent).enqueuedAt=new Date(i.enqueuedAt),e.abrupt("return",i);case 6:case"end":return e.stop()}}),e,this)})))}},{key:"delete",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid),t.next=3,this.httpRequest.delete(e);case 3:return r=t.sent,t.abrupt("return",new G(r));case 5:case"end":return t.stop()}}),t,this)})))}},{key:"getTasks",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.getTasks(Object.assign(Object.assign({},t),{indexUids:[this.uid]}));case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"getTask",value:function(t){return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.getTask(t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"waitForTasks",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.timeOutMs,i=void 0===r?5e3:r,s=e.intervalMs,a=void 0===s?50:s;return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.waitForTasks(t,{timeOutMs:i,intervalMs:a});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"waitForTask",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.timeOutMs,i=void 0===r?5e3:r,s=e.intervalMs,a=void 0===s?50:s;return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.waitForTask(t,{timeOutMs:i,intervalMs:a});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"getStats",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/stats"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"getDocuments",value:function(){var t,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function r(){var i,s,a;return n().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(void 0===(e=F(e)).filter){r.next=15;break}return r.prev=2,i="indexes/".concat(this.uid,"/documents/fetch"),r.next=6,this.httpRequest.post(i,e);case 6:case 19:return r.abrupt("return",r.sent);case 9:throw r.prev=9,r.t0=r.catch(2),(r.t0 instanceof R||r.t0 instanceof O)&&(r.t0.message=M(r.t0.message,"getDocuments")),r.t0;case 13:r.next=20;break;case 15:return s="indexes/".concat(this.uid,"/documents"),a=Array.isArray(null==e?void 0:e.fields)?{fields:null===(t=null==e?void 0:e.fields)||void 0===t?void 0:t.join(",")}:{},r.next=19,this.httpRequest.get(s,Object.assign(Object.assign({},e),a));case 20:case"end":return r.stop()}}),r,this,[[2,9]])})))}},{key:"getDocument",value:function(t,e){return S(this,void 0,void 0,n().mark((function r(){var i,s;return n().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return i="indexes/".concat(this.uid,"/documents/").concat(t),s=function(){var t;if(Array.isArray(null==e?void 0:e.fields))return null===(t=null==e?void 0:e.fields)||void 0===t?void 0:t.join(",")}(),r.next=4,this.httpRequest.get(i,F(Object.assign(Object.assign({},e),{fields:s})));case 4:return r.abrupt("return",r.sent);case 5:case"end":return r.stop()}}),r,this)})))}},{key:"addDocuments",value:function(t,e){return S(this,void 0,void 0,n().mark((function r(){var i,s;return n().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return i="indexes/".concat(this.uid,"/documents"),r.next=3,this.httpRequest.post(i,t,e);case 3:return s=r.sent,r.abrupt("return",new G(s));case 5:case"end":return r.stop()}}),r,this)})))}},{key:"addDocumentsFromString",value:function(t,e,r){return S(this,void 0,void 0,n().mark((function i(){var s,a;return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return s="indexes/".concat(this.uid,"/documents"),n.next=3,this.httpRequest.post(s,t,r,{headers:{"Content-Type":e}});case 3:return a=n.sent,n.abrupt("return",new G(a));case 5:case"end":return n.stop()}}),i,this)})))}},{key:"addDocumentsInBatches",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=arguments.length>2?arguments[2]:void 0;return S(this,void 0,void 0,n().mark((function i(){var s,a;return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:s=[],a=0;case 2:if(!(a<t.length)){n.next=11;break}return n.t0=s,n.next=6,this.addDocuments(t.slice(a,a+e),r);case 6:n.t1=n.sent,n.t0.push.call(n.t0,n.t1);case 8:a+=e,n.next=2;break;case 11:return n.abrupt("return",s);case 12:case"end":return n.stop()}}),i,this)})))}},{key:"updateDocuments",value:function(t,e){return S(this,void 0,void 0,n().mark((function r(){var i,s;return n().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return i="indexes/".concat(this.uid,"/documents"),r.next=3,this.httpRequest.put(i,t,e);case 3:return s=r.sent,r.abrupt("return",new G(s));case 5:case"end":return r.stop()}}),r,this)})))}},{key:"updateDocumentsInBatches",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=arguments.length>2?arguments[2]:void 0;return S(this,void 0,void 0,n().mark((function i(){var s,a;return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:s=[],a=0;case 2:if(!(a<t.length)){n.next=11;break}return n.t0=s,n.next=6,this.updateDocuments(t.slice(a,a+e),r);case 6:n.t1=n.sent,n.t0.push.call(n.t0,n.t1);case 8:a+=e,n.next=2;break;case 11:return n.abrupt("return",s);case 12:case"end":return n.stop()}}),i,this)})))}},{key:"updateDocumentsFromString",value:function(t,e,r){return S(this,void 0,void 0,n().mark((function i(){var s,a;return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return s="indexes/".concat(this.uid,"/documents"),n.next=3,this.httpRequest.put(s,t,r,{headers:{"Content-Type":e}});case 3:return a=n.sent,n.abrupt("return",new G(a));case 5:case"end":return n.stop()}}),i,this)})))}},{key:"deleteDocument",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/documents/").concat(t),e.next=3,this.httpRequest.delete(r);case 3:return(i=e.sent).enqueuedAt=new Date(i.enqueuedAt),e.abrupt("return",i);case 6:case"end":return e.stop()}}),e,this)})))}},{key:"deleteDocuments",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,s,a,u;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=!Array.isArray(t)&&"object"===i(t),s=r?"documents/delete":"documents/delete-batch",a="indexes/".concat(this.uid,"/").concat(s),e.prev=3,e.next=6,this.httpRequest.post(a,t);case 6:return u=e.sent,e.abrupt("return",new G(u));case 10:throw e.prev=10,e.t0=e.catch(3),(e.t0 instanceof R&&r||e.t0 instanceof O)&&(e.t0.message=M(e.t0.message,"deleteDocuments")),e.t0;case 14:case"end":return e.stop()}}),e,this,[[3,10]])})))}},{key:"deleteAllDocuments",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/documents"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getSettings",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateSettings",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings"),e.next=3,this.httpRequest.patch(r,t);case 3:return(i=e.sent).enqueued=new Date(i.enqueuedAt),e.abrupt("return",i);case 6:case"end":return e.stop()}}),e,this)})))}},{key:"resetSettings",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getPagination",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/pagination"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updatePagination",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/pagination"),e.next=3,this.httpRequest.patch(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetPagination",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/pagination"),t.next=3,this.httpRequest.delete(e);case 3:return r=t.sent,t.abrupt("return",new G(r));case 5:case"end":return t.stop()}}),t,this)})))}},{key:"getSynonyms",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/synonyms"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateSynonyms",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/synonyms"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetSynonyms",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/synonyms"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getStopWords",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/stop-words"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateStopWords",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/stop-words"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetStopWords",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/stop-words"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getRankingRules",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/ranking-rules"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateRankingRules",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/ranking-rules"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetRankingRules",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/ranking-rules"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getDistinctAttribute",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/distinct-attribute"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateDistinctAttribute",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/distinct-attribute"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetDistinctAttribute",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/distinct-attribute"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getFilterableAttributes",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/filterable-attributes"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateFilterableAttributes",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/filterable-attributes"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetFilterableAttributes",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/filterable-attributes"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getSortableAttributes",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/sortable-attributes"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateSortableAttributes",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/sortable-attributes"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetSortableAttributes",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/sortable-attributes"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getSearchableAttributes",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/searchable-attributes"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateSearchableAttributes",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/searchable-attributes"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetSearchableAttributes",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/searchable-attributes"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getDisplayedAttributes",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/displayed-attributes"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateDisplayedAttributes",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/displayed-attributes"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetDisplayedAttributes",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/displayed-attributes"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getTypoTolerance",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/typo-tolerance"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateTypoTolerance",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/typo-tolerance"),e.next=3,this.httpRequest.patch(r,t);case 3:return(i=e.sent).enqueuedAt=new Date(i.enqueuedAt),e.abrupt("return",i);case 6:case"end":return e.stop()}}),e,this)})))}},{key:"resetTypoTolerance",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/typo-tolerance"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getFaceting",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/faceting"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateFaceting",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/faceting"),e.next=3,this.httpRequest.patch(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetFaceting",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/faceting"),t.next=3,this.httpRequest.delete(e);case 3:return r=t.sent,t.abrupt("return",new G(r));case 5:case"end":return t.stop()}}),t,this)})))}},{key:"getSeparatorTokens",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/separator-tokens"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateSeparatorTokens",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/separator-tokens"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetSeparatorTokens",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/separator-tokens"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getNonSeparatorTokens",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/non-separator-tokens"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateNonSeparatorTokens",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/non-separator-tokens"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetNonSeparatorTokens",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/non-separator-tokens"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}},{key:"getDictionary",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/dictionary"),t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"updateDictionary",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes/".concat(this.uid,"/settings/dictionary"),e.next=3,this.httpRequest.put(r,t);case 3:return i=e.sent,e.abrupt("return",new G(i));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"resetDictionary",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="indexes/".concat(this.uid,"/settings/dictionary"),t.next=3,this.httpRequest.delete(e);case 3:return(r=t.sent).enqueuedAt=new Date(r.enqueuedAt),t.abrupt("return",r);case 6:case"end":return t.stop()}}),t,this)})))}}],[{key:"create",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0;return S(this,void 0,void 0,n().mark((function i(){var s,a,u;return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return s="indexes",a=new H(r),n.next=4,a.post(s,Object.assign(Object.assign({},e),{uid:t}));case 4:return u=n.sent,n.abrupt("return",new G(u));case 6:case"end":return n.stop()}}),i)})))}}]),t}(),V=function(){function t(e){s(this,t),this.config=e,this.httpRequest=new H(e),this.tasks=new W(e)}return u(t,[{key:"index",value:function(t){return new Z(this.config,t)}},{key:"getIndex",value:function(t){return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Z(this.config,t).fetchInfo());case 1:case"end":return e.stop()}}),e,this)})))}},{key:"getRawIndex",value:function(t){return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Z(this.config,t).getRawInfo());case 1:case"end":return e.stop()}}),e,this)})))}},{key:"getIndexes",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function e(){var r,i,s=this;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getRawIndexes(t);case 2:return r=e.sent,i=r.results.map((function(t){return new Z(s.config,t.uid,t.primaryKey)})),e.abrupt("return",Object.assign(Object.assign({},r),{results:i}));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"getRawIndexes",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function e(){var r;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="indexes",e.next=3,this.httpRequest.get(r,t);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})))}},{key:"createIndex",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return S(this,void 0,void 0,n().mark((function r(){return n().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,Z.create(t,e,this.config);case 2:return r.abrupt("return",r.sent);case 3:case"end":return r.stop()}}),r,this)})))}},{key:"updateIndex",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return S(this,void 0,void 0,n().mark((function r(){return n().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,new Z(this.config,t).update(e);case 2:return r.abrupt("return",r.sent);case 3:case"end":return r.stop()}}),r,this)})))}},{key:"deleteIndex",value:function(t){return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new Z(this.config,t).delete();case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"deleteIndexIfExists",value:function(t){return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.deleteIndex(t);case 3:return e.abrupt("return",!0);case 6:if(e.prev=6,e.t0=e.catch(0),"index_not_found"!==e.t0.code){e.next=10;break}return e.abrupt("return",!1);case 10:throw e.t0;case 11:case"end":return e.stop()}}),e,this,[[0,6]])})))}},{key:"swapIndexes",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="/swap-indexes",e.next=3,this.httpRequest.post(r,t);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})))}},{key:"multiSearch",value:function(t,e){return S(this,void 0,void 0,n().mark((function r(){var i;return n().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return i="multi-search",r.next=3,this.httpRequest.post(i,t,void 0,e);case 3:return r.abrupt("return",r.sent);case 4:case"end":return r.stop()}}),r,this)})))}},{key:"getTasks",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.getTasks(t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"getTask",value:function(t){return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.getTask(t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"waitForTasks",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.timeOutMs,i=void 0===r?5e3:r,s=e.intervalMs,a=void 0===s?50:s;return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.waitForTasks(t,{timeOutMs:i,intervalMs:a});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"waitForTask",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.timeOutMs,i=void 0===r?5e3:r,s=e.intervalMs,a=void 0===s?50:s;return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.waitForTask(t,{timeOutMs:i,intervalMs:a});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"cancelTasks",value:function(t){return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.cancelTasks(t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"deleteTasks",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function e(){return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.tasks.deleteTasks(t);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e,this)})))}},{key:"getKeys",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return S(this,void 0,void 0,n().mark((function e(){var r,i;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="keys",e.next=3,this.httpRequest.get(r,t);case 3:return(i=e.sent).results=i.results.map((function(t){return Object.assign(Object.assign({},t),{createdAt:new Date(t.createdAt),updatedAt:new Date(t.updatedAt)})})),e.abrupt("return",i);case 6:case"end":return e.stop()}}),e,this)})))}},{key:"getKey",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="keys/".concat(t),e.next=3,this.httpRequest.get(r);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})))}},{key:"createKey",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="keys",e.next=3,this.httpRequest.post(r,t);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})))}},{key:"updateKey",value:function(t,e){return S(this,void 0,void 0,n().mark((function r(){var i;return n().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return i="keys/".concat(t),r.next=3,this.httpRequest.patch(i,e);case 3:return r.abrupt("return",r.sent);case 4:case"end":return r.stop()}}),r,this)})))}},{key:"deleteKey",value:function(t){return S(this,void 0,void 0,n().mark((function e(){var r;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r="keys/".concat(t),e.next=3,this.httpRequest.delete(r);case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}}),e,this)})))}},{key:"health",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="health",t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"isHealthy",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,e="health",t.next=4,this.httpRequest.get(e);case 4:return t.abrupt("return",!0);case 7:return t.prev=7,t.t0=t.catch(0),t.abrupt("return",!1);case 10:case"end":return t.stop()}}),t,this,[[0,7]])})))}},{key:"getStats",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="stats",t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"getVersion",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="version",t.next=3,this.httpRequest.get(e);case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"createDump",value:function(){return S(this,void 0,void 0,n().mark((function t(){var e,r;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return e="dumps",t.next=3,this.httpRequest.post(e);case 3:return r=t.sent,t.abrupt("return",new G(r));case 5:case"end":return t.stop()}}),t,this)})))}},{key:"generateTenantToken",value:function(t,e,r){var n=new Error;throw new Error("Meilisearch: failed to generate a tenant token. Generation of a token only works in a node environment \n ".concat(n.stack,"."))}}]),t}(),Q=function(t){c(r,t);var e=w(r);function r(t){return s(this,r),e.call(this,t)}return u(r)}(V);t.ContentTypeEnum=r,t.Index=Z,t.MatchingStrategies=e,t.MeiliSearch=Q,t.MeiliSearchApiError=O,t.MeiliSearchCommunicationError=R,t.MeiliSearchError=E,t.MeiliSearchTimeOutError=D,t.default=Q,t.httpErrorHandler=P,t.httpResponseErrorHandler=j,t.versionErrorHintMessage=M,Object.defineProperty(t,"__esModule",{value:!0})}(e)}));function a(t){return"object"==typeof t&&!Array.isArray(t)&&null!==t}function u(t){return t.replace(/(.*):(.*)/i,'"$1"="$2"')}function o(t){return"string"==typeof t?u(t):Array.isArray(t)?t.map((function(t){return Array.isArray(t)?t.map((function(t){return u(t)})).filter((function(t){return t})):u(t)})).filter((function(t){return t})):[]}function c(t){return""===t?[]:"string"==typeof t?[t]:t}function d(t,e,r){return function(t,e,r){var n=r.trim(),s=c(t),a=c(e);return i(i(i([],s,!0),a,!0),[n],!1).filter((function(t){return Array.isArray(t)?t.length:t}))}(o(r||[]),o(e||[]),t||"")}function h(t){var e={},r=t.facets,n=t.attributesToSnippet,i=t.snippetEllipsisText,s=t.attributesToRetrieve,a=t.attributesToHighlight,u=t.highlightPreTag,o=t.highlightPostTag,c=t.placeholderSearch,h=t.query,f=t.sort,p=t.pagination,v=t.matchingStrategy,l=t.filters,g=t.numericFilters,y=t.facetFilters,w=t.indexUid,x=d(l,g,y);return{getParams:function(){return e},addQuery:function(){e.q=h},addIndexUid:function(){e.indexUid=w},addFacets:function(){Array.isArray(r)?e.facets=r:"string"==typeof r&&(e.facets=[r])},addAttributesToCrop:function(){n&&(e.attributesToCrop=n)},addCropMarker:function(){null!=i&&(e.cropMarker=i)},addAttributesToRetrieve:function(){s&&(e.attributesToRetrieve=s)},addFilters:function(){x.length&&(e.filter=x)},addAttributesToHighlight:function(){e.attributesToHighlight=a||["*"]},addPreTag:function(){e.highlightPreTag=u||"__ais-highlight__"},addPostTag:function(){e.highlightPostTag=o||"__/ais-highlight__"},addPagination:function(){var t=function(t,e,r){return!!(r||e||t&&0!==t.length)}(x,h,c);if(p.finite){var r=function(t,e){var r=t.page,n=t.hitsPerPage;return e?{hitsPerPage:n,page:r+1}:{hitsPerPage:0,page:r+1}}(p,t),n=r.hitsPerPage,i=r.page;e.hitsPerPage=n,e.page=i}else{var s=function(t,e){var r=t.page,n=t.hitsPerPage;return e?{limit:n+1,offset:r*n}:{limit:0,offset:0}}(p,t),a=s.limit,u=s.offset;e.limit=a,e.offset=u}},addSort:function(){(null==f?void 0:f.length)&&(e.sort=Array.isArray(f)?f:[f])},addGeoSearchFilter:function(){var r=function(t){var e,r,n,i=t.insideBoundingBox,s=t.aroundLatLng,a=t.aroundRadius,u=t.minimumAroundRadius;if(s){var o=s.split(",").map((function(t){return Number.parseFloat(t).toFixed(5)}));e=[v=o[0],l=o[1]]}if(null==a&&null==u||("all"===a?console.warn("instant-meilisearch is not compatible with the `all` value on the aroundRadius parameter"):r=null!=a?a:u),i&&"string"==typeof i){var c=i.split(",").map((function(t){return parseFloat(t)})),d=c[0],h=c[1],f=c[2],p=c[3];n="_geoBoundingBox([".concat(d,", ").concat(h,"], [").concat(f,", ").concat(p,"])")}else if(null!=e&&null!=r){var v=e[0],l=e[1];n="_geoRadius(".concat(v,", ").concat(l,", ").concat(r,")")}return n}({insideBoundingBox:t.insideBoundingBox,aroundLatLng:t.aroundLatLng,aroundRadius:t.aroundRadius,minimumAroundRadius:t.minimumAroundRadius});r&&(e.filter?e.filter.unshift(r):e.filter=[r])},addMatchingStrategy:function(){v&&(e.matchingStrategy=v)}}}function f(t){var e=h(t);return e.addQuery(),e.addIndexUid(),e.addFacets(),e.addAttributesToHighlight(),e.addPreTag(),e.addPostTag(),e.addAttributesToRetrieve(),e.addAttributesToCrop(),e.addCropMarker(),e.addPagination(),e.addFilters(),e.addSort(),e.addGeoSearchFilter(),e.addMatchingStrategy(),e.getParams()}function p(t){return"string"==typeof t?t:void 0===t?JSON.stringify(null):JSON.stringify(t)}function v(t){return Array.isArray(t)?t.map((function(t){return v(t)})):a(t)?Object.keys(t).reduce((function(e,r){return e[r]=v(t[r]),e}),{}):{value:p(t)}}function l(t){if(!t)return{};var e=v(t);return{_highlightResult:e,_snippetResult:e}}function g(t,e){var r=t.hits,n=t.pagination.hitsPerPage,i=e.finitePagination,s=e.primaryKey;!i&&r.length>n&&r.splice(r.length-1,1);var a=r.map((function(t){if(Object.keys(t).length>0){var e=t._formatted;t._matchesPosition;var r=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]])}return r}(t,["_formatted","_matchesPosition"]),n=Object.assign(r,l(e));return s&&(n.objectID=t[s]),n}return t}));return a=function(t){for(var e,r=0;r<t.length;r++){var n="".concat(r+1e6*Math.random());t[r]._geo&&(t[r]._geoloc=t[r]._geo,t[r].objectID=n),(null===(e=t[r]._formatted)||void 0===e?void 0:e._geo)&&(t[r]._formatted._geoloc=t[r]._formatted._geo,t[r]._formatted.objectID=n)}return t}(a),a}function y(t){return Object.keys(t).reduce((function(r,n){return r[n]=e(e({},t[n]),{avg:0,sum:0}),r}),{})}function w(t,e,r){var n=t.map((function(t){return function(t,e,r){var n=t.processingTimeMs,i=t.query,s=t.indexUid,a=t.facetDistribution,u=void 0===a?{}:a,o=t.facetStats,c=void 0===o?{}:o,d=Object.keys(u),h=function(t,e){var r=e.hitsPerPage,n=e.page,i=function(t,e){if(null!=t.totalPages)return t.totalPages;if(0===e)return 0;var r=t.limit,n=void 0===r?20:r,i=t.offset;return(void 0===i?0:i)/e+1+(t.hits.length>=n?1:0)}(t,r);return{page:n,nbPages:i,hitsPerPage:r}}(t,t.pagination),f=h.hitsPerPage,p=h.page,v=h.nbPages,l=g(t,r),w=function(t){var e=t.hitsPerPage,r=void 0===e?0:e,n=t.totalPages,i=void 0===n?0:n,s=t.estimatedTotalHits,a=t.totalHits;return null!=s?s:null!=a?a:r*i}(t),x=function(t,e,r,n){return t?function(t,e,r){for(var n=function(t){return t?"string"==typeof t?[t]:t:[]}(t),i={},s=0,a=n;s<a.length;s++){var u=a[s];for(var o in e[u])i[u]||(i[u]=r[u]||{}),i[u][o]?i[u][o]=r[u][o]:i[u][o]=0}return i}(e,r,n=n||{}):n}(r.keepZeroFacets,d,e,u);return{index:s,hitsPerPage:f,page:p,facets:x,nbPages:v,nbHits:w,processingTimeMS:n,query:i,hits:l,params:"",exhaustiveNbHits:!1,facets_stats:y(c)}}(t,e[t.indexUid],r)}));return{results:n}}function x(t){return t?t.split(/,(?=\w+:(?:asc|desc))/):[]}function b(t,e,r){return{hitsPerPage:void 0===e?20:e,page:r||0,finite:!!t}}function m(t){var e=t.indexOf(":");return-1===e?{indexUid:t,sortBy:""}:{indexUid:t.substring(0,e),sortBy:t.substring(e+1)}}function k(t,r){var n=t.query,i=t.indexName,s=t.params,a=m(i),u=a.indexUid,o=a.sortBy,c=b(r.finitePagination,null==s?void 0:s.hitsPerPage,null==s?void 0:s.page);return e(e(e(e({},r),{query:n}),s),{sort:x(o),indexUid:u,pagination:c,placeholderSearch:!1!==r.placeholderSearch,keepZeroFacets:!!r.keepZeroFacets})}function q(t){void 0===t&&(t={});var e=t;return{getEntry:function(t){if(e[t])try{return JSON.parse(e[t])}catch(t){return}},formatKey:function(t){return t.reduce((function(t,e){return t+JSON.stringify(e)}),"")},setEntry:function(t,r){e[t]=JSON.stringify(r)},clearCache:function(){e={}}}}function A(t){var r=h(e(e({},t),{placeholderSearch:!0,query:""}));return r.addFacets(),r.addIndexUid(),r.addPagination(),r.getParams()}function T(t,e,i){return r(this,void 0,void 0,(function(){var r,s,a,u,o,c;return n(this,(function(n){switch(n.label){case 0:return d="indexUid",h=[],r=function(t){return!h.includes(t[d])&&(h.push(t[d]),!0)},s=e.filter(r).filter((function(t){var e=t.indexUid;return!Object.keys(i).includes(e)})),0===s.length?[2,i]:[4,t.multiSearch(s,[])];case 1:for(a=n.sent(),u=0,o=a;u<o.length;u++)c=o[u],i[c.indexUid]=c.facetDistribution||{};return[2,i]}var d,h}))}))}var S;t.MatchingStrategies=void 0,(S=t.MatchingStrategies||(t.MatchingStrategies={})).ALL="all",S.LAST="last",t.instantMeiliSearch=function(t,i,u){void 0===i&&(i=""),void 0===u&&(u={}),function(t,e,r){var n=r.requestConfig,i=r.httpClient;if("string"!=typeof t)throw new TypeError("Provided hostUrl value (1st parameter) is not a string, expected string");if("string"!=typeof e&&"function"!=typeof e)throw new TypeError("Provided apiKey value (2nd parameter) is not a string or a function, expected string or function");if(void 0!==n&&!a(n))throw new TypeError("Provided requestConfig should be an object");if(i&&"function"!=typeof i)throw new TypeError("Provided custom httpClient should be a function")}(t,i,u);var o={host:t,apiKey:i=function(t){if("function"==typeof t){var e=t();if("string"!=typeof e)throw new TypeError("Provided apiKey function (2nd parameter) did not return a string, expected string");return e}return t}(i),clientAgents:function(t){void 0===t&&(t=[]);var e="Meilisearch instant-meilisearch (v".concat("0.13.6",")");return t.concat(e)}(u.clientAgents)};void 0!==u.httpClient&&(o.httpClient=u.httpClient),void 0!==u.requestConfig&&(o.requestConfig=u.requestConfig);var c,d,h,p=new s.MeiliSearch(o),v=q(),l=(c=p,d=v,{multiSearch:function(t,i){return r(this,void 0,void 0,(function(){var r,s,a,u;return n(this,(function(n){switch(n.label){case 0:return r=d.formatKey([t]),(s=d.getEntry(r))?[2,s]:[4,c.multiSearch({queries:t})];case 1:return a=n.sent(),u=a.results.map((function(t,r){return e(e({},t),{pagination:i[r]||{}})})),d.setEntry(r,u),[2,u]}}))}))}}),g={},y=(h=u,e(e({},{placeholderSearch:!0,keepZeroFacets:!1,clientAgents:[],finitePagination:!1}),h));return{clearCache:function(){return v.clearCache()},search:function(t){return r(this,void 0,void 0,(function(){var r,i,s,a,o,c,d,h,p,v,x;return n(this,(function(n){switch(n.label){case 0:for(n.trys.push([0,3,,4]),r=[],i=[],s=[],a=0,o=t;a<o.length;a++)c=o[a],d=k(c,u),h=f(d),r.push(h),p=A(d),s.push(p),i.push(d.pagination);return[4,T(l,s,g)];case 1:return g=n.sent(),[4,l.multiSearch(r,i)];case 2:return v=n.sent(),g=function(t,r){for(var n=0,i=r;n<i.length;n++){var s=i[n];t[s.indexUid]=e(e({},s.facetDistribution||{}),t[s.indexUid]||{})}return t}(g,v),[2,w(v,g,y)];case 3:throw x=n.sent(),console.error(x),new Error(x);case 4:return[2]}}))}))},searchForFacetValues:function(t){return r(this,void 0,void 0,(function(){var r,i,s,a,o,c,d,h,v,l;return n(this,(function(n){switch(n.label){case 0:r=[],i=0,s=t,n.label=1;case 1:return i<s.length?(a=s[i],o=function(t,r){var n=m(t.indexName),i=n.indexUid,s=n.sortBy,a=t.params,u=b(r.finitePagination,null==a?void 0:a.hitsPerPage,null==a?void 0:a.page);return e(e(e({},r),a),{sort:x(s),indexUid:i,pagination:u,placeholderSearch:!1!==r.placeholderSearch,keepZeroFacets:!!r.keepZeroFacets})}(a,u),c=f(o),delete(d=e(e({},c),{facetQuery:a.params.facetQuery,facetName:a.params.facetName})).indexUid,[4,p.index(o.indexUid).searchForFacetValues(d)]):[3,4];case 2:h=n.sent(),v=h.facetHits.map((function(t){return e(e({},t),{highlighted:t.value})})),l={facetHits:v,exhaustiveFacetsCount:!1,processingTimeMS:h.processingTimeMs},r.push(l),n.label=3;case 3:return i++,[3,1];case 4:return[2,r]}}))}))}}},Object.defineProperty(t,"__esModule",{value:!0})}));
+!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("cross-fetch/polyfill")):"function"==typeof define&&define.amd?define(["exports","cross-fetch/polyfill"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).window=t.window||{},t.require$$0)}(this,(function(t,e){"use strict";function n(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var r=n(e),i=function(){return i=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},i.apply(this,arguments)};function s(t,e,n,r){return new(n||(n=Promise))((function(i,s){function o(t){try{a(r.next(t))}catch(t){s(t)}}function u(t){try{a(r.throw(t))}catch(t){s(t)}}function a(t){var e;t.done?i(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(o,u)}a((r=r.apply(t,e||[])).next())}))}function o(t,e){var n,r,i,s,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function u(u){return function(a){return function(u){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,u[0]&&(o=0)),o;)try{if(n=1,r&&(i=2&u[0]?r.return:u[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,u[1])).done)return i;switch(r=0,i&&(u=[2&u[0],i.value]),u[0]){case 0:case 1:i=u;break;case 4:return o.label++,{value:u[1],done:!1};case 5:o.label++,r=u[1],u=[0];continue;case 7:u=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==u[0]&&2!==u[0])){o=0;continue}if(3===u[0]&&(!i||u[1]>i[0]&&u[1]<i[3])){o.label=u[1];break}if(6===u[0]&&o.label<i[1]){o.label=i[1],i=u;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(u);break}i[2]&&o.ops.pop(),o.trys.pop();continue}u=e.call(t,o)}catch(t){u=[6,t],r=0}finally{n=i=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,a])}}}function u(t,e,n){if(n||2===arguments.length)for(var r,i=0,s=e.length;i<s;i++)!r&&i in e||(r||(r=Array.prototype.slice.call(e,0,i)),r[i]=e[i]);return t.concat(r||Array.prototype.slice.call(e))}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var a=function(t){var e={exports:{}};return t(e,e.exports),e.exports}((function(t,e){!function(t){var e={ALL:"all",LAST:"last"},n=function(t,e){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},n(t,e)};function r(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var i=function(){return i=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t},i.apply(this,arguments)};function s(t,e,n,r){function i(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,s){function o(t){try{a(r.next(t))}catch(t){s(t)}}function u(t){try{a(r.throw(t))}catch(t){s(t)}}function a(t){t.done?n(t.value):i(t.value).then(o,u)}a((r=r.apply(t,e||[])).next())}))}function o(t,e){var n,r,i,s,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function u(t){return function(e){return a([t,e])}}function a(s){if(n)throw new TypeError("Generator is already executing.");for(;o;)try{if(n=1,r&&(i=2&s[0]?r.return:s[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;switch(r=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,r=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!((i=(i=o.trys).length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=e.call(t,o)}catch(t){s=[6,t],r=0}finally{n=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}var u=function(t){function e(n,r,i,s){var o,u,a,c=this;return c=t.call(this,n)||this,Object.setPrototypeOf(c,e.prototype),c.name="MeiliSearchCommunicationError",r instanceof Response&&(c.message=r.statusText,c.statusCode=r.status),r instanceof Error&&(c.errno=r.errno,c.code=r.code),s?(c.stack=s,c.stack=null===(o=c.stack)||void 0===o?void 0:o.replace(/(TypeError|FetchError)/,c.name),c.stack=null===(u=c.stack)||void 0===u?void 0:u.replace("Failed to fetch","request to ".concat(i," failed, reason: connect ECONNREFUSED")),c.stack=null===(a=c.stack)||void 0===a?void 0:a.replace("Not Found","Not Found: ".concat(i))):Error.captureStackTrace&&Error.captureStackTrace(c,e),c}return r(e,t),e}(Error),a=function(t){function e(e,n){var r=t.call(this,e.message)||this;return Object.setPrototypeOf(r,a.prototype),r.name="MeiliSearchApiError",r.code=e.code,r.type=e.type,r.link=e.link,r.message=e.message,r.httpStatus=n,Error.captureStackTrace&&Error.captureStackTrace(r,a),r}return r(e,t),e}(Error);function c(t){return s(this,void 0,void 0,(function(){var e;return o(this,(function(n){switch(n.label){case 0:if(t.ok)return[3,5];e=void 0,n.label=1;case 1:return n.trys.push([1,3,,4]),[4,t.json()];case 2:return e=n.sent(),[3,4];case 3:throw n.sent(),new u(t.statusText,t,t.url);case 4:throw new a(e,t.status);case 5:return[2,t]}}))}))}function h(t,e,n){if("MeiliSearchApiError"!==t.name)throw new u(t.message,t,n,e);throw t}var d=function(t){function e(n){var r=t.call(this,n)||this;return Object.setPrototypeOf(r,e.prototype),r.name="MeiliSearchError",Error.captureStackTrace&&Error.captureStackTrace(r,e),r}return r(e,t),e}(Error),l=function(t){function e(n){var r=t.call(this,n)||this;return Object.setPrototypeOf(r,e.prototype),r.name="MeiliSearchTimeOutError",Error.captureStackTrace&&Error.captureStackTrace(r,e),r}return r(e,t),e}(Error);function f(t){return Object.entries(t).reduce((function(t,e){var n=e[0],r=e[1];return void 0!==r&&(t[n]=r),t}),{})}function p(t){return s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,new Promise((function(e){return setTimeout(e,t)}))];case 1:return[2,e.sent()]}}))}))}function v(t){return t.startsWith("https://")||t.startsWith("http://")?t:"http://".concat(t)}function g(t){return t.endsWith("/")||(t+="/"),t}var y="0.32.1";function b(t){return Object.keys(t).reduce((function(e,n){var r,s,o,u=t[n];return void 0===u?e:Array.isArray(u)?i(i({},e),((r={})[n]=u.join(","),r)):u instanceof Date?i(i({},e),((s={})[n]=u.toISOString(),s)):i(i({},e),((o={})[n]=u,o))}),{})}function w(t){try{return t=g(t=v(t))}catch(t){throw new d("The provided host is not valid.")}}function m(t){if(Array.isArray(t))return t.reduce((function(t,e){return t[e[0]]=e[1],t}),{});if("has"in t){var e={};return t.forEach((function(t,n){return e[n]=t})),e}return Object.assign({},t)}function q(t){var e,n,r="X-Meilisearch-Client",i="Meilisearch JavaScript (v".concat(y,")"),s="Content-Type",o="Authorization",u=m(null!==(n=null===(e=t.requestConfig)||void 0===e?void 0:e.headers)&&void 0!==n?n:{});if(t.apiKey&&!u[o]&&(u[o]="Bearer ".concat(t.apiKey)),u[s]||(u["Content-Type"]="application/json"),t.clientAgents&&Array.isArray(t.clientAgents)){var a=t.clientAgents.concat(i);u[r]=a.join(" ; ")}else{if(t.clientAgents&&!Array.isArray(t.clientAgents))throw new d('Meilisearch: The header "'.concat(r,'" should be an array of string(s).\n'));u[r]=i}return u}var A=function(){function t(t){this.headers=q(t),this.requestConfig=t.requestConfig,this.httpClient=t.httpClient;try{var e=w(t.host);this.url=new URL(e)}catch(t){throw new d("The provided host is not valid.")}}return t.prototype.request=function(t){var e=t.method,n=t.url,r=t.params,u=t.body,a=t.config;return s(this,void 0,void 0,(function(){var t,s,d,l,f,p;return o(this,(function(o){switch(o.label){case 0:t=new URL(n,this.url),r&&(s=new URLSearchParams,Object.keys(r).filter((function(t){return null!==r[t]})).map((function(t){return s.set(t,r[t])})),t.search=s.toString()),o.label=1;case 1:return o.trys.push([1,6,,7]),d=this.httpClient?this.httpClient:fetch,l=d(t.toString(),i(i(i({},a),this.requestConfig),{method:e,body:JSON.stringify(u),headers:this.headers})),this.httpClient?[4,l]:[3,3];case 2:return[2,o.sent()];case 3:return[4,l.then((function(t){return c(t)}))];case 4:return[4,o.sent().json().catch((function(){}))];case 5:return[2,o.sent()];case 6:return f=o.sent(),p=f.stack,h(f,p,t.toString()),[3,7];case 7:return[2]}}))}))},t.prototype.get=function(t,e,n){return s(this,void 0,void 0,(function(){return o(this,(function(r){switch(r.label){case 0:return[4,this.request({method:"GET",url:t,params:e,config:n})];case 1:return[2,r.sent()]}}))}))},t.prototype.post=function(t,e,n,r){return s(this,void 0,void 0,(function(){return o(this,(function(i){switch(i.label){case 0:return[4,this.request({method:"POST",url:t,body:e,params:n,config:r})];case 1:return[2,i.sent()]}}))}))},t.prototype.put=function(t,e,n,r){return s(this,void 0,void 0,(function(){return o(this,(function(i){switch(i.label){case 0:return[4,this.request({method:"PUT",url:t,body:e,params:n,config:r})];case 1:return[2,i.sent()]}}))}))},t.prototype.patch=function(t,e,n,r){return s(this,void 0,void 0,(function(){return o(this,(function(i){switch(i.label){case 0:return[4,this.request({method:"PATCH",url:t,body:e,params:n,config:r})];case 1:return[2,i.sent()]}}))}))},t.prototype.delete=function(t,e,n,r){return s(this,void 0,void 0,(function(){return o(this,(function(i){switch(i.label){case 0:return[4,this.request({method:"DELETE",url:t,body:e,params:n,config:r})];case 1:return[2,i.sent()]}}))}))},t}(),x=function(){function t(t){this.taskUid=t.taskUid,this.indexUid=t.indexUid,this.status=t.status,this.type=t.type,this.enqueuedAt=new Date(t.enqueuedAt)}return t}(),R=function(){function t(t){this.indexUid=t.indexUid,this.status=t.status,this.type=t.type,this.uid=t.uid,this.details=t.details,this.canceledBy=t.canceledBy,this.error=t.error,this.duration=t.duration,this.startedAt=new Date(t.startedAt),this.enqueuedAt=new Date(t.enqueuedAt),this.finishedAt=new Date(t.finishedAt)}return t}(),T=function(){function t(t){this.httpRequest=new A(t)}return t.prototype.getTask=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="tasks/".concat(t),[4,this.httpRequest.get(e)];case 1:return n=r.sent(),[2,new R(n)]}}))}))},t.prototype.getTasks=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="tasks",[4,this.httpRequest.get(e,b(t))];case 1:return n=r.sent(),[2,i(i({},n),{results:n.results.map((function(t){return new R(t)}))})]}}))}))},t.prototype.waitForTask=function(t,e){var n=void 0===e?{}:e,r=n.timeOutMs,i=void 0===r?5e3:r,u=n.intervalMs,a=void 0===u?50:u;return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:e=Date.now(),r.label=1;case 1:return Date.now()-e<i?[4,this.getTask(t)]:[3,4];case 2:return n=r.sent(),["enqueued","processing"].includes(n.status)?[4,p(a)]:[2,n];case 3:return r.sent(),[3,1];case 4:throw new l("timeout of ".concat(i,"ms has exceeded on process ").concat(t," when waiting a task to be resolved."))}}))}))},t.prototype.waitForTasks=function(t,e){var n=void 0===e?{}:e,r=n.timeOutMs,i=void 0===r?5e3:r,u=n.intervalMs,a=void 0===u?50:u;return s(this,void 0,void 0,(function(){var e,n,r,s,u;return o(this,(function(o){switch(o.label){case 0:e=[],n=0,r=t,o.label=1;case 1:return n<r.length?(s=r[n],[4,this.waitForTask(s,{timeOutMs:i,intervalMs:a})]):[3,4];case 2:u=o.sent(),e.push(u),o.label=3;case 3:return n++,[3,1];case 4:return[2,e]}}))}))},t.prototype.cancelTasks=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="tasks/cancel",[4,this.httpRequest.post(e,{},b(t))];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.deleteTasks=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="tasks",[4,this.httpRequest.delete(e,{},b(t))];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t}(),k=function(){function t(t,e,n){this.uid=e,this.primaryKey=n,this.httpRequest=new A(t),this.tasks=new T(t)}return t.prototype.search=function(t,e,n){return s(this,void 0,void 0,(function(){var r;return o(this,(function(s){switch(s.label){case 0:return r="indexes/".concat(this.uid,"/search"),[4,this.httpRequest.post(r,f(i({q:t},e)),void 0,n)];case 1:return[2,s.sent()]}}))}))},t.prototype.searchGet=function(t,e,n){var r,u,a,c,h;return s(this,void 0,void 0,(function(){var s,l,p;return o(this,(function(o){switch(o.label){case 0:return s="indexes/".concat(this.uid,"/search"),l=function(t){if("string"==typeof t)return t;if(Array.isArray(t))throw new d("The filter query parameter should be in string format when using searchGet")},p=i(i({q:t},e),{filter:l(null==e?void 0:e.filter),sort:null===(r=null==e?void 0:e.sort)||void 0===r?void 0:r.join(","),facets:null===(u=null==e?void 0:e.facets)||void 0===u?void 0:u.join(","),attributesToRetrieve:null===(a=null==e?void 0:e.attributesToRetrieve)||void 0===a?void 0:a.join(","),attributesToCrop:null===(c=null==e?void 0:e.attributesToCrop)||void 0===c?void 0:c.join(","),attributesToHighlight:null===(h=null==e?void 0:e.attributesToHighlight)||void 0===h?void 0:h.join(",")}),[4,this.httpRequest.get(s,f(p),n)];case 1:return[2,o.sent()]}}))}))},t.prototype.getRawInfo=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid),[4,this.httpRequest.get(t)];case 1:return e=n.sent(),this.primaryKey=e.primaryKey,this.updatedAt=new Date(e.updatedAt),this.createdAt=new Date(e.createdAt),[2,e]}}))}))},t.prototype.fetchInfo=function(){return s(this,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,this.getRawInfo()];case 1:return t.sent(),[2,this]}}))}))},t.prototype.fetchPrimaryKey=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t=this,[4,this.getRawInfo()];case 1:return t.primaryKey=e.sent().primaryKey,[2,this.primaryKey]}}))}))},t.create=function(t,e,n){return void 0===e&&(e={}),s(this,void 0,void 0,(function(){var r,s;return o(this,(function(o){switch(o.label){case 0:return r="indexes",[4,new A(n).post(r,i(i({},e),{uid:t}))];case 1:return s=o.sent(),[2,new x(s)]}}))}))},t.prototype.update=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid),[4,this.httpRequest.patch(e,t)];case 1:return(n=r.sent()).enqueuedAt=new Date(n.enqueuedAt),[2,n]}}))}))},t.prototype.delete=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid),[4,this.httpRequest.delete(t)];case 1:return e=n.sent(),[2,new x(e)]}}))}))},t.prototype.getTasks=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.getTasks(i(i({},t),{indexUids:[this.uid]}))];case 1:return[2,e.sent()]}}))}))},t.prototype.getTask=function(t){return s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.getTask(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.waitForTasks=function(t,e){var n=void 0===e?{}:e,r=n.timeOutMs,i=void 0===r?5e3:r,u=n.intervalMs,a=void 0===u?50:u;return s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.waitForTasks(t,{timeOutMs:i,intervalMs:a})];case 1:return[2,e.sent()]}}))}))},t.prototype.waitForTask=function(t,e){var n=void 0===e?{}:e,r=n.timeOutMs,i=void 0===r?5e3:r,u=n.intervalMs,a=void 0===u?50:u;return s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.waitForTask(t,{timeOutMs:i,intervalMs:a})];case 1:return[2,e.sent()]}}))}))},t.prototype.getStats=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/stats"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.getDocuments=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/documents"),n=function(){var e;if(Array.isArray(null==t?void 0:t.fields))return null===(e=null==t?void 0:t.fields)||void 0===e?void 0:e.join(",")}(),[4,this.httpRequest.get(e,f(i(i({},t),{fields:n})))];case 1:return[2,r.sent()]}}))}))},t.prototype.getDocument=function(t,e){return s(this,void 0,void 0,(function(){var n,r;return o(this,(function(s){switch(s.label){case 0:return n="indexes/".concat(this.uid,"/documents/").concat(t),r=function(){var t;if(Array.isArray(null==e?void 0:e.fields))return null===(t=null==e?void 0:e.fields)||void 0===t?void 0:t.join(",")}(),[4,this.httpRequest.get(n,f(i(i({},e),{fields:r})))];case 1:return[2,s.sent()]}}))}))},t.prototype.addDocuments=function(t,e){return s(this,void 0,void 0,(function(){var n,r;return o(this,(function(i){switch(i.label){case 0:return n="indexes/".concat(this.uid,"/documents"),[4,this.httpRequest.post(n,t,e)];case 1:return r=i.sent(),[2,new x(r)]}}))}))},t.prototype.addDocumentsInBatches=function(t,e,n){return void 0===e&&(e=1e3),s(this,void 0,void 0,(function(){var r,i,s,u;return o(this,(function(o){switch(o.label){case 0:r=[],i=0,o.label=1;case 1:return i<t.length?(u=(s=r).push,[4,this.addDocuments(t.slice(i,i+e),n)]):[3,4];case 2:u.apply(s,[o.sent()]),o.label=3;case 3:return i+=e,[3,1];case 4:return[2,r]}}))}))},t.prototype.updateDocuments=function(t,e){return s(this,void 0,void 0,(function(){var n,r;return o(this,(function(i){switch(i.label){case 0:return n="indexes/".concat(this.uid,"/documents"),[4,this.httpRequest.put(n,t,e)];case 1:return r=i.sent(),[2,new x(r)]}}))}))},t.prototype.updateDocumentsInBatches=function(t,e,n){return void 0===e&&(e=1e3),s(this,void 0,void 0,(function(){var r,i,s,u;return o(this,(function(o){switch(o.label){case 0:r=[],i=0,o.label=1;case 1:return i<t.length?(u=(s=r).push,[4,this.updateDocuments(t.slice(i,i+e),n)]):[3,4];case 2:u.apply(s,[o.sent()]),o.label=3;case 3:return i+=e,[3,1];case 4:return[2,r]}}))}))},t.prototype.deleteDocument=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/documents/").concat(t),[4,this.httpRequest.delete(e)];case 1:return(n=r.sent()).enqueuedAt=new Date(n.enqueuedAt),[2,n]}}))}))},t.prototype.deleteDocuments=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/documents/delete-batch"),[4,this.httpRequest.post(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.deleteAllDocuments=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/documents"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getSettings=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateSettings=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings"),[4,this.httpRequest.patch(e,t)];case 1:return(n=r.sent()).enqueued=new Date(n.enqueuedAt),[2,n]}}))}))},t.prototype.resetSettings=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getPagination=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/pagination"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updatePagination=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/pagination"),[4,this.httpRequest.patch(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetPagination=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/pagination"),[4,this.httpRequest.delete(t)];case 1:return e=n.sent(),[2,new x(e)]}}))}))},t.prototype.getSynonyms=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/synonyms"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateSynonyms=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/synonyms"),[4,this.httpRequest.put(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetSynonyms=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/synonyms"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getStopWords=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/stop-words"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateStopWords=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/stop-words"),[4,this.httpRequest.put(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetStopWords=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/stop-words"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getRankingRules=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/ranking-rules"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateRankingRules=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/ranking-rules"),[4,this.httpRequest.put(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetRankingRules=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/ranking-rules"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getDistinctAttribute=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/distinct-attribute"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateDistinctAttribute=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/distinct-attribute"),[4,this.httpRequest.put(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetDistinctAttribute=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/distinct-attribute"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getFilterableAttributes=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/filterable-attributes"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateFilterableAttributes=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/filterable-attributes"),[4,this.httpRequest.put(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetFilterableAttributes=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/filterable-attributes"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getSortableAttributes=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/sortable-attributes"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateSortableAttributes=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/sortable-attributes"),[4,this.httpRequest.put(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetSortableAttributes=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/sortable-attributes"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getSearchableAttributes=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/searchable-attributes"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateSearchableAttributes=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/searchable-attributes"),[4,this.httpRequest.put(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetSearchableAttributes=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/searchable-attributes"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getDisplayedAttributes=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/displayed-attributes"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateDisplayedAttributes=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/displayed-attributes"),[4,this.httpRequest.put(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetDisplayedAttributes=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/displayed-attributes"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getTypoTolerance=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/typo-tolerance"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateTypoTolerance=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/typo-tolerance"),[4,this.httpRequest.patch(e,t)];case 1:return(n=r.sent()).enqueuedAt=new Date(n.enqueuedAt),[2,n]}}))}))},t.prototype.resetTypoTolerance=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/typo-tolerance"),[4,this.httpRequest.delete(t)];case 1:return(e=n.sent()).enqueuedAt=new Date(e.enqueuedAt),[2,e]}}))}))},t.prototype.getFaceting=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="indexes/".concat(this.uid,"/settings/faceting"),[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.updateFaceting=function(t){return s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="indexes/".concat(this.uid,"/settings/faceting"),[4,this.httpRequest.patch(e,t)];case 1:return n=r.sent(),[2,new x(n)]}}))}))},t.prototype.resetFaceting=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="indexes/".concat(this.uid,"/settings/faceting"),[4,this.httpRequest.delete(t)];case 1:return e=n.sent(),[2,new x(e)]}}))}))},t}(),S=function(t){function e(e){return t.call(this,e)||this}return r(e,t),e}(function(){function t(t){this.config=t,this.httpRequest=new A(t),this.tasks=new T(t)}return t.prototype.index=function(t){return new k(this.config,t)},t.prototype.getIndex=function(t){return s(this,void 0,void 0,(function(){return o(this,(function(e){return[2,new k(this.config,t).fetchInfo()]}))}))},t.prototype.getRawIndex=function(t){return s(this,void 0,void 0,(function(){return o(this,(function(e){return[2,new k(this.config,t).getRawInfo()]}))}))},t.prototype.getIndexes=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){var e,n,r=this;return o(this,(function(s){switch(s.label){case 0:return[4,this.getRawIndexes(t)];case 1:return e=s.sent(),n=e.results.map((function(t){return new k(r.config,t.uid,t.primaryKey)})),[2,i(i({},e),{results:n})]}}))}))},t.prototype.getRawIndexes=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){var e;return o(this,(function(n){switch(n.label){case 0:return e="indexes",[4,this.httpRequest.get(e,t)];case 1:return[2,n.sent()]}}))}))},t.prototype.createIndex=function(t,e){return void 0===e&&(e={}),s(this,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,k.create(t,e,this.config)];case 1:return[2,n.sent()]}}))}))},t.prototype.updateIndex=function(t,e){return void 0===e&&(e={}),s(this,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,new k(this.config,t).update(e)];case 1:return[2,n.sent()]}}))}))},t.prototype.deleteIndex=function(t){return s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,new k(this.config,t).delete()];case 1:return[2,e.sent()]}}))}))},t.prototype.deleteIndexIfExists=function(t){return s(this,void 0,void 0,(function(){var e;return o(this,(function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),[4,this.deleteIndex(t)];case 1:return n.sent(),[2,!0];case 2:if("index_not_found"===(e=n.sent()).code)return[2,!1];throw e;case 3:return[2]}}))}))},t.prototype.swapIndexes=function(t){return s(this,void 0,void 0,(function(){var e;return o(this,(function(n){switch(n.label){case 0:return e="/swap-indexes",[4,this.httpRequest.post(e,t)];case 1:return[2,n.sent()]}}))}))},t.prototype.multiSearch=function(t,e){return s(this,void 0,void 0,(function(){var n;return o(this,(function(r){switch(r.label){case 0:return n="/multi-search",[4,this.httpRequest.post(n,t,void 0,e)];case 1:return[2,r.sent()]}}))}))},t.prototype.getTasks=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.getTasks(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.getTask=function(t){return s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.getTask(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.waitForTasks=function(t,e){var n=void 0===e?{}:e,r=n.timeOutMs,i=void 0===r?5e3:r,u=n.intervalMs,a=void 0===u?50:u;return s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.waitForTasks(t,{timeOutMs:i,intervalMs:a})];case 1:return[2,e.sent()]}}))}))},t.prototype.waitForTask=function(t,e){var n=void 0===e?{}:e,r=n.timeOutMs,i=void 0===r?5e3:r,u=n.intervalMs,a=void 0===u?50:u;return s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.waitForTask(t,{timeOutMs:i,intervalMs:a})];case 1:return[2,e.sent()]}}))}))},t.prototype.cancelTasks=function(t){return s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.cancelTasks(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.deleteTasks=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return[4,this.tasks.deleteTasks(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.getKeys=function(t){return void 0===t&&(t={}),s(this,void 0,void 0,(function(){var e,n;return o(this,(function(r){switch(r.label){case 0:return e="keys",[4,this.httpRequest.get(e,t)];case 1:return(n=r.sent()).results=n.results.map((function(t){return i(i({},t),{createdAt:new Date(t.createdAt),updateAt:new Date(t.updateAt)})})),[2,n]}}))}))},t.prototype.getKey=function(t){return s(this,void 0,void 0,(function(){var e;return o(this,(function(n){switch(n.label){case 0:return e="keys/".concat(t),[4,this.httpRequest.get(e)];case 1:return[2,n.sent()]}}))}))},t.prototype.createKey=function(t){return s(this,void 0,void 0,(function(){var e;return o(this,(function(n){switch(n.label){case 0:return e="keys",[4,this.httpRequest.post(e,t)];case 1:return[2,n.sent()]}}))}))},t.prototype.updateKey=function(t,e){return s(this,void 0,void 0,(function(){var n;return o(this,(function(r){switch(r.label){case 0:return n="keys/".concat(t),[4,this.httpRequest.patch(n,e)];case 1:return[2,r.sent()]}}))}))},t.prototype.deleteKey=function(t){return s(this,void 0,void 0,(function(){var e;return o(this,(function(n){switch(n.label){case 0:return e="keys/".concat(t),[4,this.httpRequest.delete(e)];case 1:return[2,n.sent()]}}))}))},t.prototype.health=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="health",[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.isHealthy=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return e.trys.push([0,2,,3]),t="health",[4,this.httpRequest.get(t)];case 1:return e.sent(),[2,!0];case 2:return e.sent(),[2,!1];case 3:return[2]}}))}))},t.prototype.getStats=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="stats",[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.getVersion=function(){return s(this,void 0,void 0,(function(){var t;return o(this,(function(e){switch(e.label){case 0:return t="version",[4,this.httpRequest.get(t)];case 1:return[2,e.sent()]}}))}))},t.prototype.createDump=function(){return s(this,void 0,void 0,(function(){var t,e;return o(this,(function(n){switch(n.label){case 0:return t="dumps",[4,this.httpRequest.post(t)];case 1:return e=n.sent(),[2,new x(e)]}}))}))},t.prototype.generateTenantToken=function(t,e,n){var r=new Error;throw new Error("Meilisearch: failed to generate a tenant token. Generation of a token only works in a node environment \n ".concat(r.stack,"."))},t}());t.Index=k,t.MatchingStrategies=e,t.MeiliSearch=S,t.MeiliSearchApiError=a,t.MeiliSearchCommunicationError=u,t.MeiliSearchError=d,t.MeiliSearchTimeOutError=l,t.default=S,t.httpErrorHandler=h,t.httpResponseErrorHandler=c,Object.defineProperty(t,"__esModule",{value:!0})}(e,r.default)}));function c(t){return"object"==typeof t&&!Array.isArray(t)&&null!==t}function h(t){return t.replace(/:(.*)/i,'="$1"')}function d(t){return"string"==typeof t?h(t):Array.isArray(t)?t.map((function(t){return Array.isArray(t)?t.map((function(t){return h(t)})).filter((function(t){return t})):h(t)})).filter((function(t){return t})):[]}function l(t){return""===t?[]:"string"==typeof t?[t]:t}function f(t,e,n){return function(t,e,n){var r=n.trim(),i=l(t),s=l(e);return u(u(u([],i,!0),s,!0),[r],!1).filter((function(t){return Array.isArray(t)?t.length:t}))}(d(n||[]),d(e||[]),t||"")}function p(t){var e={},n=t.facets,r=t.attributesToSnippet,i=t.snippetEllipsisText,s=t.attributesToRetrieve,o=t.attributesToHighlight,u=t.highlightPreTag,a=t.highlightPostTag,c=t.placeholderSearch,h=t.query,d=t.sort,l=t.pagination,p=t.matchingStrategy,v=t.filters,g=t.numericFilters,y=t.facetFilters,b=t.indexUid,w=f(v,g,y);return{getParams:function(){return e},addQuery:function(){e.q=h},addIndexUid:function(){e.indexUid=b},addFacets:function(){Array.isArray(n)?e.facets=n:"string"==typeof n&&(e.facets=[n])},addAttributesToCrop:function(){r&&(e.attributesToCrop=r)},addCropMarker:function(){null!=i&&(e.cropMarker=i)},addAttributesToRetrieve:function(){s&&(e.attributesToRetrieve=s)},addFilters:function(){w.length&&(e.filter=w)},addAttributesToHighlight:function(){e.attributesToHighlight=o||["*"]},addPreTag:function(){e.highlightPreTag=u||"__ais-highlight__"},addPostTag:function(){e.highlightPostTag=a||"__/ais-highlight__"},addPagination:function(){var t=function(t,e,n){return!!(n||e||t&&0!==t.length)}(w,h,c);if(l.finite){var n=function(t,e){var n=t.page,r=t.hitsPerPage;return e?{hitsPerPage:r,page:n+1}:{hitsPerPage:0,page:n+1}}(l,t),r=n.hitsPerPage,i=n.page;e.hitsPerPage=r,e.page=i}else{var s=function(t,e){var n=t.page,r=t.hitsPerPage;return e?{limit:r+1,offset:n*r}:{limit:0,offset:0}}(l,t),o=s.limit,u=s.offset;e.limit=o,e.offset=u}},addSort:function(){(null==d?void 0:d.length)&&(e.sort=Array.isArray(d)?d:[d])},addGeoSearchFilter:function(){var n=function(t){var e,n,r,i=t.insideBoundingBox,s=t.aroundLatLng,o=t.aroundRadius,u=t.minimumAroundRadius;if(s){var a=s.split(",").map((function(t){return Number.parseFloat(t).toFixed(5)}));e=[p=a[0],v=a[1]]}if(null==o&&null==u||("all"===o?console.warn("instant-meilisearch is not compatible with the `all` value on the aroundRadius parameter"):n=null!=o?o:u),i&&"string"==typeof i){var c=i.split(",").map((function(t){return parseFloat(t)})),h=c[0],d=c[1],l=c[2],f=c[3];r="_geoBoundingBox([".concat(h,", ").concat(d,"], [").concat(l,", ").concat(f,"])")}else if(null!=e&&null!=n){var p=e[0],v=e[1];r="_geoRadius(".concat(p,", ").concat(v,", ").concat(n,")")}return r}({insideBoundingBox:t.insideBoundingBox,aroundLatLng:t.aroundLatLng,aroundRadius:t.aroundRadius,minimumAroundRadius:t.minimumAroundRadius});n&&(e.filter?e.filter.unshift(n):e.filter=[n])},addMatchingStrategy:function(){p&&(e.matchingStrategy=p)}}}function v(t){var e=p(t);return e.addQuery(),e.addIndexUid(),e.addFacets(),e.addAttributesToHighlight(),e.addPreTag(),e.addPostTag(),e.addAttributesToRetrieve(),e.addAttributesToCrop(),e.addCropMarker(),e.addPagination(),e.addFilters(),e.addSort(),e.addGeoSearchFilter(),e.addMatchingStrategy(),e.getParams()}function g(t){return"string"==typeof t?t:void 0===t?JSON.stringify(null):JSON.stringify(t)}function y(t){return Array.isArray(t)?t.map((function(t){return y(t)})):c(t)?Object.keys(t).reduce((function(e,n){return e[n]=y(t[n]),e}),{}):{value:g(t)}}function b(t){if(!t)return{};var e=y(t);return{_highlightResult:e,_snippetResult:e}}function w(t,e){var n=t.hits,r=t.pagination.hitsPerPage,i=e.finitePagination,s=e.primaryKey;!i&&n.length>r&&n.splice(n.length-1,1);var o=n.map((function(t){if(Object.keys(t).length>0){var e=t._formatted;t._matchesPosition;var n=function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]])}return n}(t,["_formatted","_matchesPosition"]),r=Object.assign(n,b(e));return s&&(r.objectID=t[s]),r}return t}));return o=function(t){for(var e,n=0;n<t.length;n++){var r="".concat(n+1e6*Math.random());t[n]._geo&&(t[n]._geoloc=t[n]._geo,t[n].objectID=r),(null===(e=t[n]._formatted)||void 0===e?void 0:e._geo)&&(t[n]._formatted._geoloc=t[n]._formatted._geo,t[n]._formatted.objectID=r)}return t}(o),o}function m(t){return Object.keys(t).reduce((function(e,n){return e[n]=i(i({},t[n]),{avg:0,sum:0}),e}),{})}function q(t,e,n){var r=t.map((function(t){return function(t,e,n){var r=t.processingTimeMs,i=t.query,s=t.indexUid,o=t.facetDistribution,u=void 0===o?{}:o,a=t.facetStats,c=void 0===a?{}:a,h=Object.keys(u),d=function(t,e){var n=e.hitsPerPage,r=e.page,i=function(t,e){if(null!=t.totalPages)return t.totalPages;if(0===e)return 0;var n=t.limit,r=void 0===n?20:n,i=t.offset;return(void 0===i?0:i)/e+1+(t.hits.length>=r?1:0)}(t,n);return{page:r,nbPages:i,hitsPerPage:n}}(t,t.pagination),l=d.hitsPerPage,f=d.page,p=d.nbPages,v=w(t,n),g=function(t){var e=t.hitsPerPage,n=void 0===e?0:e,r=t.totalPages,i=void 0===r?0:r,s=t.estimatedTotalHits,o=t.totalHits;return null!=s?s:null!=o?o:n*i}(t),y=function(t,e,n,r){return t?function(t,e,n){for(var r=function(t){return t?"string"==typeof t?[t]:t:[]}(t),i={},s=0,o=r;s<o.length;s++){var u=o[s];for(var a in e[u])i[u]||(i[u]=n[u]||{}),i[u][a]?i[u][a]=n[u][a]:i[u][a]=0}return i}(e,n,r=r||{}):r}(n.keepZeroFacets,h,e,u);return{index:s,hitsPerPage:l,page:f,facets:y,nbPages:p,nbHits:g,processingTimeMS:r,query:i,hits:v,params:"",exhaustiveNbHits:!1,facets_stats:m(c)}}(t,e[t.indexUid],n)}));return{results:r}}function A(t,e){var n,r,s,o=t.indexName.split(":"),u=o[0],a=o.slice(1),c=t.params,h=(n=e.finitePagination,r=null==c?void 0:c.hitsPerPage,s=null==c?void 0:c.page,{hitsPerPage:void 0===r?20:r,page:s||0,finite:!!n}),d=a.join(":").split(",").map((function(t){return t.trim()})).filter((function(t){return!!t}));return i(i(i({},e),c),{sort:d,indexUid:u,pagination:h,placeholderSearch:!1!==e.placeholderSearch,keepZeroFacets:!!e.keepZeroFacets})}function x(t){void 0===t&&(t={});var e=t;return{getEntry:function(t){if(e[t])try{return JSON.parse(e[t])}catch(t){return}},formatKey:function(t){return t.reduce((function(t,e){return t+JSON.stringify(e)}),"")},setEntry:function(t,n){e[t]=JSON.stringify(n)},clearCache:function(){e={}}}}function R(t){var e=p(i(i({},t),{placeholderSearch:!0,query:""}));return e.addFacets(),e.addIndexUid(),e.addPagination(),e.getParams()}function T(t,e,n){return s(this,void 0,void 0,(function(){var r,i,s,u,a,c;return o(this,(function(o){switch(o.label){case 0:return h="indexUid",d=[],r=function(t){return!d.includes(t[h])&&(d.push(t[h]),!0)},i=e.filter(r).filter((function(t){var e=t.indexUid;return!Object.keys(n).includes(e)})),0===i.length?[2,n]:[4,t.multiSearch(i,[])];case 1:for(s=o.sent(),u=0,a=s;u<a.length;u++)c=a[u],n[c.indexUid]=c.facetDistribution||{};return[2,n]}var h,d}))}))}var k;t.MatchingStrategies=void 0,(k=t.MatchingStrategies||(t.MatchingStrategies={})).ALL="all",k.LAST="last",t.instantMeiliSearch=function(t,e,n){void 0===e&&(e=""),void 0===n&&(n={}),function(t,e,n){var r=n.requestConfig,i=n.httpClient;if("string"!=typeof t)throw new TypeError("Provided hostUrl value (1st parameter) is not a string, expected string");if("string"!=typeof e&&"function"!=typeof e)throw new TypeError("Provided apiKey value (2nd parameter) is not a string or a function, expected string or function");if(void 0!==r&&!c(r))throw new TypeError("Provided requestConfig should be an object");if(i&&"function"!=typeof i)throw new TypeError("Provided custom httpClient should be a function")}(t,e,n);var r={host:t,apiKey:e=function(t){if("function"==typeof t){var e=t();if("string"!=typeof e)throw new TypeError("Provided apiKey function (2nd parameter) did not return a string, expected string");return e}return t}(e),clientAgents:function(t){void 0===t&&(t=[]);var e="Meilisearch instant-meilisearch (v".concat("0.13.0",")");return t.concat(e)}(n.clientAgents)};void 0!==n.httpClient&&(r.httpClient=n.httpClient),void 0!==n.requestConfig&&(r.requestConfig=n.requestConfig);var u,h,d,l,f=new a.MeiliSearch(r),p=x(),g=(u=f,h=p,d=n.handleResults,{multiSearch:function(t,e){return s(this,void 0,void 0,(function(){var n,r,s,a;return o(this,(function(o){switch(o.label){case 0:return n=h.formatKey([t]),(r=h.getEntry(n))?d?[2,d(r,t)]:[2,r]:[4,u.multiSearch({queries:t})];case 1:return s=o.sent(),a=s.results.map((function(t,n){return i(i({},t),{pagination:e[n]||{}})})),h.setEntry(n,a),d?[2,d(a,t)]:[2,a]}}))}))}}),y={},b=(l=n,i(i({},{placeholderSearch:!0,keepZeroFacets:!1,clientAgents:[],finitePagination:!1}),l));return{clearCache:function(){return p.clearCache()},search:function(t){return s(this,void 0,void 0,(function(){var e,r,i,s,u,a,c,h,d,l,f;return o(this,(function(o){switch(o.label){case 0:for(o.trys.push([0,3,,4]),e=[],r=[],i=[],s=0,u=t;s<u.length;s++)a=u[s],c=A(a,n),h=v(c),e.push(h),d=R(c),i.push(d),r.push(c.pagination);return[4,T(g,i,y)];case 1:return y=o.sent(),[4,g.multiSearch(e,r)];case 2:return l=o.sent(),[2,q(l,y,b)];case 3:throw f=o.sent(),console.error(f),new Error(f);case 4:return[2]}}))}))},searchForFacetValues:function(t){return s(this,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,new Promise((function(t,e){e(new Error("SearchForFacetValues is not compatible with Meilisearch")),t([])}))];case 1:return[2,t.sent()]}}))}))}}},Object.defineProperty(t,"__esModule",{value:!0})}));
//# sourceMappingURL=instant-meilisearch.umd.min.js.map
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.min.js.map b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.min.js.map
index 5e9ef77..49fdcc7 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.min.js.map
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/instant-meilisearch.umd.min.js.map
@@ -1 +1 @@
-{"version":3,"file":"instant-meilisearch.umd.min.js","sources":["../../../node_modules/meilisearch/dist/bundles/meilisearch.umd.js"],"sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n typeof define === 'function' && define.amd ? define(['exports'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.window = global.window || {}));\n})(this, (function (exports) { 'use strict';\n\n // Type definitions for meilisearch\n // Project: https://github.com/meilisearch/meilisearch-js\n // Definitions by: qdequele <quentin@meilisearch.com> <https://github.com/meilisearch>\n // Definitions: https://github.com/meilisearch/meilisearch-js\n // TypeScript Version: ^3.8.3\n\n /*\r\n * SEARCH PARAMETERS\r\n */\n var MatchingStrategies = {\n ALL: 'all',\n LAST: 'last'\n };\n var ContentTypeEnum = {\n JSON: 'application/json',\n CSV: 'text/csv',\n NDJSON: 'application/x-ndjson'\n };\n\n function _regeneratorRuntime() {\n /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n\n _regeneratorRuntime = function () {\n return exports;\n };\n\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n\n try {\n define({}, \"\");\n } catch (err) {\n define = function (obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return generator._invoke = function (innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }(innerFn, self, context), generator;\n }\n\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n\n exports.wrap = wrap;\n var ContinueSentinel = {};\n\n function Generator() {}\n\n function GeneratorFunction() {}\n\n function GeneratorFunctionPrototype() {}\n\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == typeof value && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n\n reject(record.arg);\n }\n\n var previousPromise;\n\n this._invoke = function (method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n };\n }\n\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n\n if (undefined === method) {\n if (context.delegate = null, \"throw\" === context.method) {\n if (delegate.iterator.return && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method)) return ContinueSentinel;\n context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n\n return next.value = undefined, next.done = !0, next;\n };\n\n return next.next = next;\n }\n }\n\n return {\n next: doneResult\n };\n }\n\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, \"constructor\", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (object) {\n var keys = [];\n\n for (var key in object) keys.push(key);\n\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function (skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function () {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function (exception) {\n if (this.done) throw exception;\n var context = this;\n\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function (type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function (record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function (finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n catch: function (tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n\n return thrown;\n }\n }\n\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function (iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n }\n\n function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n }\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n }\n\n function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n }\n\n function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n }\n\n function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n }\n\n function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n }\n\n function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n }\n\n function _construct(Parent, args, Class) {\n if (_isNativeReflectConstruct()) {\n _construct = Reflect.construct.bind();\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) _setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n }\n\n function _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n }\n\n function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !_isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return _construct(Class, arguments, _getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return _setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n }\n\n function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n }\n\n function _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return _assertThisInitialized(self);\n }\n\n function _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n }\n\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n\n function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n }\n\n function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n\n function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function () {};\n\n return {\n s: F,\n n: function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function (e) {\n throw e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function () {\n it = it.call(o);\n },\n n: function () {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function (e) {\n didErr = true;\n err = e;\n },\n f: function () {\n try {\n if (!normalCompletion && it.return != null) it.return();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n }\n\n /******************************************************************************\r\n Copyright (c) Microsoft Corporation.\r\n\r\n Permission to use, copy, modify, and/or distribute this software for any\r\n purpose with or without fee is hereby granted.\r\n\r\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\n PERFORMANCE OF THIS SOFTWARE.\r\n ***************************************************************************** */\r\n\r\n function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n }\n\n var MeiliSearchCommunicationError = /*#__PURE__*/function (_Error) {\n _inherits(MeiliSearchCommunicationError, _Error);\n\n var _super = _createSuper(MeiliSearchCommunicationError);\n\n function MeiliSearchCommunicationError(message, body, url, stack) {\n var _this;\n\n _classCallCheck(this, MeiliSearchCommunicationError);\n\n var _a, _b, _c;\n\n _this = _super.call(this, message); // Make errors comparison possible. ex: error instanceof MeiliSearchCommunicationError.\n\n Object.setPrototypeOf(_assertThisInitialized(_this), MeiliSearchCommunicationError.prototype);\n _this.name = 'MeiliSearchCommunicationError';\n\n if (body instanceof Response) {\n _this.message = body.statusText;\n _this.statusCode = body.status;\n }\n\n if (body instanceof Error) {\n _this.errno = body.errno;\n _this.code = body.code;\n }\n\n if (stack) {\n _this.stack = stack;\n _this.stack = (_a = _this.stack) === null || _a === void 0 ? void 0 : _a.replace(/(TypeError|FetchError)/, _this.name);\n _this.stack = (_b = _this.stack) === null || _b === void 0 ? void 0 : _b.replace('Failed to fetch', \"request to \".concat(url, \" failed, reason: connect ECONNREFUSED\"));\n _this.stack = (_c = _this.stack) === null || _c === void 0 ? void 0 : _c.replace('Not Found', \"Not Found: \".concat(url));\n } else {\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_assertThisInitialized(_this), MeiliSearchCommunicationError);\n }\n }\n\n return _this;\n }\n\n return _createClass(MeiliSearchCommunicationError);\n }( /*#__PURE__*/_wrapNativeSuper(Error));\n\n var MeiliSearchApiError = /*#__PURE__*/function (_Error) {\n _inherits(MeiliSearchApiError, _Error);\n\n var _super = _createSuper(MeiliSearchApiError);\n\n function MeiliSearchApiError(error, status) {\n var _this;\n\n _classCallCheck(this, MeiliSearchApiError);\n\n _this = _super.call(this, error.message); // Make errors comparison possible. ex: error instanceof MeiliSearchApiError.\n\n Object.setPrototypeOf(_assertThisInitialized(_this), MeiliSearchApiError.prototype);\n _this.name = 'MeiliSearchApiError';\n _this.code = error.code;\n _this.type = error.type;\n _this.link = error.link;\n _this.message = error.message;\n _this.httpStatus = status;\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_assertThisInitialized(_this), MeiliSearchApiError);\n }\n\n return _this;\n }\n\n return _createClass(MeiliSearchApiError);\n }( /*#__PURE__*/_wrapNativeSuper(Error));\n\n function httpResponseErrorHandler(response) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var responseBody;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n if (response.ok) {\n _context.next = 11;\n break;\n }\n\n _context.prev = 1;\n _context.next = 4;\n return response.json();\n\n case 4:\n responseBody = _context.sent;\n _context.next = 10;\n break;\n\n case 7:\n _context.prev = 7;\n _context.t0 = _context[\"catch\"](1);\n throw new MeiliSearchCommunicationError(response.statusText, response, response.url);\n\n case 10:\n throw new MeiliSearchApiError(responseBody, response.status);\n\n case 11:\n return _context.abrupt(\"return\", response);\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }, _callee, null, [[1, 7]]);\n }));\n }\n\n function httpErrorHandler(response, stack, url) {\n if (response.name !== 'MeiliSearchApiError') {\n throw new MeiliSearchCommunicationError(response.message, response, url, stack);\n }\n\n throw response;\n }\n\n var MeiliSearchError = /*#__PURE__*/function (_Error) {\n _inherits(MeiliSearchError, _Error);\n\n var _super = _createSuper(MeiliSearchError);\n\n function MeiliSearchError(message) {\n var _this;\n\n _classCallCheck(this, MeiliSearchError);\n\n _this = _super.call(this, message); // Make errors comparison possible. ex: error instanceof MeiliSearchError.\n\n Object.setPrototypeOf(_assertThisInitialized(_this), MeiliSearchError.prototype);\n _this.name = 'MeiliSearchError';\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_assertThisInitialized(_this), MeiliSearchError);\n }\n\n return _this;\n }\n\n return _createClass(MeiliSearchError);\n }( /*#__PURE__*/_wrapNativeSuper(Error));\n\n var MeiliSearchTimeOutError = /*#__PURE__*/function (_Error) {\n _inherits(MeiliSearchTimeOutError, _Error);\n\n var _super = _createSuper(MeiliSearchTimeOutError);\n\n function MeiliSearchTimeOutError(message) {\n var _this;\n\n _classCallCheck(this, MeiliSearchTimeOutError);\n\n _this = _super.call(this, message); // Make errors comparison possible. ex: error instanceof MeiliSearchTimeOutError.\n\n Object.setPrototypeOf(_assertThisInitialized(_this), MeiliSearchTimeOutError.prototype);\n _this.name = 'MeiliSearchTimeOutError';\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_assertThisInitialized(_this), MeiliSearchTimeOutError);\n }\n\n return _this;\n }\n\n return _createClass(MeiliSearchTimeOutError);\n }( /*#__PURE__*/_wrapNativeSuper(Error));\n\n function versionErrorHintMessage(message, method) {\n return \"\".concat(message, \"\\nHint: It might not be working because maybe you're not up to date with the Meilisearch version that \").concat(method, \" call requires.\");\n }\n\n /** Removes undefined entries from object */\n\n function removeUndefinedFromObject(obj) {\n return Object.entries(obj).reduce(function (acc, curEntry) {\n var _curEntry = _slicedToArray(curEntry, 2),\n key = _curEntry[0],\n val = _curEntry[1];\n\n if (val !== undefined) acc[key] = val;\n return acc;\n }, {});\n }\n\n function sleep(ms) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return new Promise(function (resolve) {\n return setTimeout(resolve, ms);\n });\n\n case 2:\n return _context.abrupt(\"return\", _context.sent);\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n }\n\n function addProtocolIfNotPresent(host) {\n if (!(host.startsWith('https://') || host.startsWith('http://'))) {\n return \"http://\".concat(host);\n }\n\n return host;\n }\n\n function addTrailingSlash(url) {\n if (!url.endsWith('/')) {\n url += '/';\n }\n\n return url;\n }\n\n var PACKAGE_VERSION = '0.35.0';\n\n function toQueryParams(parameters) {\n var params = Object.keys(parameters);\n var queryParams = params.reduce(function (acc, key) {\n var value = parameters[key];\n\n if (value === undefined) {\n return acc;\n } else if (Array.isArray(value)) {\n return Object.assign(Object.assign({}, acc), _defineProperty({}, key, value.join(',')));\n } else if (value instanceof Date) {\n return Object.assign(Object.assign({}, acc), _defineProperty({}, key, value.toISOString()));\n }\n\n return Object.assign(Object.assign({}, acc), _defineProperty({}, key, value));\n }, {});\n return queryParams;\n }\n\n function constructHostURL(host) {\n try {\n host = addProtocolIfNotPresent(host);\n host = addTrailingSlash(host);\n return host;\n } catch (e) {\n throw new MeiliSearchError('The provided host is not valid.');\n }\n }\n\n function cloneAndParseHeaders(headers) {\n if (Array.isArray(headers)) {\n return headers.reduce(function (acc, headerPair) {\n acc[headerPair[0]] = headerPair[1];\n return acc;\n }, {});\n } else if ('has' in headers) {\n var clonedHeaders = {};\n headers.forEach(function (value, key) {\n return clonedHeaders[key] = value;\n });\n return clonedHeaders;\n } else {\n return Object.assign({}, headers);\n }\n }\n\n function createHeaders(config) {\n var _a, _b;\n\n var agentHeader = 'X-Meilisearch-Client';\n var packageAgent = \"Meilisearch JavaScript (v\".concat(PACKAGE_VERSION, \")\");\n var contentType = 'Content-Type';\n var authorization = 'Authorization';\n var headers = cloneAndParseHeaders((_b = (_a = config.requestConfig) === null || _a === void 0 ? void 0 : _a.headers) !== null && _b !== void 0 ? _b : {}); // do not override if user provided the header\n\n if (config.apiKey && !headers[authorization]) {\n headers[authorization] = \"Bearer \".concat(config.apiKey);\n }\n\n if (!headers[contentType]) {\n headers['Content-Type'] = 'application/json';\n } // Creates the custom user agent with information on the package used.\n\n\n if (config.clientAgents && Array.isArray(config.clientAgents)) {\n var clients = config.clientAgents.concat(packageAgent);\n headers[agentHeader] = clients.join(' ; ');\n } else if (config.clientAgents && !Array.isArray(config.clientAgents)) {\n // If the header is defined but not an array\n throw new MeiliSearchError(\"Meilisearch: The header \\\"\".concat(agentHeader, \"\\\" should be an array of string(s).\\n\"));\n } else {\n headers[agentHeader] = packageAgent;\n }\n\n return headers;\n }\n\n var HttpRequests = /*#__PURE__*/function () {\n function HttpRequests(config) {\n _classCallCheck(this, HttpRequests);\n\n this.headers = createHeaders(config);\n this.requestConfig = config.requestConfig;\n this.httpClient = config.httpClient;\n\n try {\n var host = constructHostURL(config.host);\n this.url = new URL(host);\n } catch (e) {\n throw new MeiliSearchError('The provided host is not valid.');\n }\n }\n\n _createClass(HttpRequests, [{\n key: \"request\",\n value: function request(_ref) {\n var method = _ref.method,\n url = _ref.url,\n params = _ref.params,\n body = _ref.body,\n _ref$config = _ref.config,\n config = _ref$config === void 0 ? {} : _ref$config;\n\n var _a;\n\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var constructURL, queryParams, headers, fetchFn, result, response, parsedBody, stack;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n if (typeof fetch === 'undefined') {\n require('cross-fetch/polyfill');\n }\n\n constructURL = new URL(url, this.url);\n\n if (params) {\n queryParams = new URLSearchParams();\n Object.keys(params).filter(function (x) {\n return params[x] !== null;\n }).map(function (x) {\n return queryParams.set(x, params[x]);\n });\n constructURL.search = queryParams.toString();\n } // in case a custom content-type is provided\n // do not stringify body\n\n\n if (!((_a = config.headers) === null || _a === void 0 ? void 0 : _a['Content-Type'])) {\n body = JSON.stringify(body);\n }\n\n headers = Object.assign(Object.assign({}, this.headers), config.headers);\n _context.prev = 5;\n fetchFn = this.httpClient ? this.httpClient : fetch;\n result = fetchFn(constructURL.toString(), Object.assign(Object.assign(Object.assign({}, config), this.requestConfig), {\n method: method,\n body: body,\n headers: headers\n })); // When using a custom HTTP client, the response is returned to allow the user to parse/handle it as they see fit\n\n if (!this.httpClient) {\n _context.next = 12;\n break;\n }\n\n _context.next = 11;\n return result;\n\n case 11:\n return _context.abrupt(\"return\", _context.sent);\n\n case 12:\n _context.next = 14;\n return result.then(function (res) {\n return httpResponseErrorHandler(res);\n });\n\n case 14:\n response = _context.sent;\n _context.next = 17;\n return response.json().catch(function () {\n return undefined;\n });\n\n case 17:\n parsedBody = _context.sent;\n return _context.abrupt(\"return\", parsedBody);\n\n case 21:\n _context.prev = 21;\n _context.t0 = _context[\"catch\"](5);\n stack = _context.t0.stack;\n httpErrorHandler(_context.t0, stack, constructURL.toString());\n\n case 25:\n case \"end\":\n return _context.stop();\n }\n }, _callee, this, [[5, 21]]);\n }));\n }\n }, {\n key: \"get\",\n value: function get(url, params, config) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return this.request({\n method: 'GET',\n url: url,\n params: params,\n config: config\n });\n\n case 2:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, this);\n }));\n }\n }, {\n key: \"post\",\n value: function post(url, data, params, config) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return this.request({\n method: 'POST',\n url: url,\n body: data,\n params: params,\n config: config\n });\n\n case 2:\n return _context3.abrupt(\"return\", _context3.sent);\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3, this);\n }));\n }\n }, {\n key: \"put\",\n value: function put(url, data, params, config) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {\n return _regeneratorRuntime().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n _context4.next = 2;\n return this.request({\n method: 'PUT',\n url: url,\n body: data,\n params: params,\n config: config\n });\n\n case 2:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4, this);\n }));\n }\n }, {\n key: \"patch\",\n value: function patch(url, data, params, config) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {\n return _regeneratorRuntime().wrap(function _callee5$(_context5) {\n while (1) switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return this.request({\n method: 'PATCH',\n url: url,\n body: data,\n params: params,\n config: config\n });\n\n case 2:\n return _context5.abrupt(\"return\", _context5.sent);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }, _callee5, this);\n }));\n }\n }, {\n key: \"delete\",\n value: function _delete(url, data, params, config) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {\n return _regeneratorRuntime().wrap(function _callee6$(_context6) {\n while (1) switch (_context6.prev = _context6.next) {\n case 0:\n _context6.next = 2;\n return this.request({\n method: 'DELETE',\n url: url,\n body: data,\n params: params,\n config: config\n });\n\n case 2:\n return _context6.abrupt(\"return\", _context6.sent);\n\n case 3:\n case \"end\":\n return _context6.stop();\n }\n }, _callee6, this);\n }));\n }\n }]);\n\n return HttpRequests;\n }();\n\n var EnqueuedTask = /*#__PURE__*/_createClass(function EnqueuedTask(task) {\n _classCallCheck(this, EnqueuedTask);\n\n this.taskUid = task.taskUid;\n this.indexUid = task.indexUid;\n this.status = task.status;\n this.type = task.type;\n this.enqueuedAt = new Date(task.enqueuedAt);\n });\n\n var Task = /*#__PURE__*/_createClass(function Task(task) {\n _classCallCheck(this, Task);\n\n this.indexUid = task.indexUid;\n this.status = task.status;\n this.type = task.type;\n this.uid = task.uid;\n this.details = task.details;\n this.canceledBy = task.canceledBy;\n this.error = task.error;\n this.duration = task.duration;\n this.startedAt = new Date(task.startedAt);\n this.enqueuedAt = new Date(task.enqueuedAt);\n this.finishedAt = new Date(task.finishedAt);\n });\n\n var TaskClient = /*#__PURE__*/function () {\n function TaskClient(config) {\n _classCallCheck(this, TaskClient);\n\n this.httpRequest = new HttpRequests(config);\n }\n /**\r\n * Get one task\r\n *\r\n * @param uid - Unique identifier of the task\r\n * @returns\r\n */\n\n\n _createClass(TaskClient, [{\n key: \"getTask\",\n value: function getTask(uid) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var url, taskItem;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n url = \"tasks/\".concat(uid);\n _context.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n taskItem = _context.sent;\n return _context.abrupt(\"return\", new Task(taskItem));\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }, _callee, this);\n }));\n }\n /**\r\n * Get tasks\r\n *\r\n * @param parameters - Parameters to browse the tasks\r\n * @returns Promise containing all tasks\r\n */\n\n }, {\n key: \"getTasks\",\n value: function getTasks() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {\n var url, tasks;\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n url = \"tasks\";\n _context2.next = 3;\n return this.httpRequest.get(url, toQueryParams(parameters));\n\n case 3:\n tasks = _context2.sent;\n return _context2.abrupt(\"return\", Object.assign(Object.assign({}, tasks), {\n results: tasks.results.map(function (task) {\n return new Task(task);\n })\n }));\n\n case 5:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, this);\n }));\n }\n /**\r\n * Wait for a task to be processed.\r\n *\r\n * @param taskUid - Task identifier\r\n * @param options - Additional configuration options\r\n * @returns Promise returning a task after it has been processed\r\n */\n\n }, {\n key: \"waitForTask\",\n value: function waitForTask(taskUid) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$timeOutMs = _ref.timeOutMs,\n timeOutMs = _ref$timeOutMs === void 0 ? 5000 : _ref$timeOutMs,\n _ref$intervalMs = _ref.intervalMs,\n intervalMs = _ref$intervalMs === void 0 ? 50 : _ref$intervalMs;\n\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {\n var startingTime, response;\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n startingTime = Date.now();\n\n case 1:\n if (!(Date.now() - startingTime < timeOutMs)) {\n _context3.next = 11;\n break;\n }\n\n _context3.next = 4;\n return this.getTask(taskUid);\n\n case 4:\n response = _context3.sent;\n\n if ([\"enqueued\"\n /* TaskStatus.TASK_ENQUEUED */\n , \"processing\"\n /* TaskStatus.TASK_PROCESSING */\n ].includes(response.status)) {\n _context3.next = 7;\n break;\n }\n\n return _context3.abrupt(\"return\", response);\n\n case 7:\n _context3.next = 9;\n return sleep(intervalMs);\n\n case 9:\n _context3.next = 1;\n break;\n\n case 11:\n throw new MeiliSearchTimeOutError(\"timeout of \".concat(timeOutMs, \"ms has exceeded on process \").concat(taskUid, \" when waiting a task to be resolved.\"));\n\n case 12:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3, this);\n }));\n }\n /**\r\n * Waits for multiple tasks to be processed\r\n *\r\n * @param taskUids - Tasks identifier list\r\n * @param options - Wait options\r\n * @returns Promise returning a list of tasks after they have been processed\r\n */\n\n }, {\n key: \"waitForTasks\",\n value: function waitForTasks(taskUids) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref2$timeOutMs = _ref2.timeOutMs,\n timeOutMs = _ref2$timeOutMs === void 0 ? 5000 : _ref2$timeOutMs,\n _ref2$intervalMs = _ref2.intervalMs,\n intervalMs = _ref2$intervalMs === void 0 ? 50 : _ref2$intervalMs;\n\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {\n var tasks, _iterator, _step, taskUid, task;\n\n return _regeneratorRuntime().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n tasks = [];\n _iterator = _createForOfIteratorHelper(taskUids);\n _context4.prev = 2;\n\n _iterator.s();\n\n case 4:\n if ((_step = _iterator.n()).done) {\n _context4.next = 12;\n break;\n }\n\n taskUid = _step.value;\n _context4.next = 8;\n return this.waitForTask(taskUid, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n });\n\n case 8:\n task = _context4.sent;\n tasks.push(task);\n\n case 10:\n _context4.next = 4;\n break;\n\n case 12:\n _context4.next = 17;\n break;\n\n case 14:\n _context4.prev = 14;\n _context4.t0 = _context4[\"catch\"](2);\n\n _iterator.e(_context4.t0);\n\n case 17:\n _context4.prev = 17;\n\n _iterator.f();\n\n return _context4.finish(17);\n\n case 20:\n return _context4.abrupt(\"return\", tasks);\n\n case 21:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4, this, [[2, 14, 17, 20]]);\n }));\n }\n /**\r\n * Cancel a list of enqueued or processing tasks.\r\n *\r\n * @param parameters - Parameters to filter the tasks.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"cancelTasks\",\n value: function cancelTasks() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee5$(_context5) {\n while (1) switch (_context5.prev = _context5.next) {\n case 0:\n url = \"tasks/cancel\";\n _context5.next = 3;\n return this.httpRequest.post(url, {}, toQueryParams(parameters));\n\n case 3:\n task = _context5.sent;\n return _context5.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context5.stop();\n }\n }, _callee5, this);\n }));\n }\n /**\r\n * Delete a list tasks.\r\n *\r\n * @param parameters - Parameters to filter the tasks.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"deleteTasks\",\n value: function deleteTasks() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee6$(_context6) {\n while (1) switch (_context6.prev = _context6.next) {\n case 0:\n url = \"tasks\";\n _context6.next = 3;\n return this.httpRequest.delete(url, {}, toQueryParams(parameters));\n\n case 3:\n task = _context6.sent;\n return _context6.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context6.stop();\n }\n }, _callee6, this);\n }));\n }\n }]);\n\n return TaskClient;\n }();\n\n /*\r\n * Bundle: MeiliSearch / Indexes\r\n * Project: MeiliSearch - Javascript API\r\n * Author: Quentin de Quelen <quentin@meilisearch.com>\r\n * Copyright: 2019, MeiliSearch\r\n */\n\n var Index = /*#__PURE__*/function () {\n /**\r\n * @param config - Request configuration options\r\n * @param uid - UID of the index\r\n * @param primaryKey - Primary Key of the index\r\n */\n function Index(config, uid, primaryKey) {\n _classCallCheck(this, Index);\n\n this.uid = uid;\n this.primaryKey = primaryKey;\n this.httpRequest = new HttpRequests(config);\n this.tasks = new TaskClient(config);\n } ///\n /// SEARCH\n ///\n\n /**\r\n * Search for documents into an index\r\n *\r\n * @param query - Query string\r\n * @param options - Search options\r\n * @param config - Additional request configuration options\r\n * @returns Promise containing the search response\r\n */\n\n\n _createClass(Index, [{\n key: \"search\",\n value: function search(query, options, config) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var url;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/search\");\n _context.next = 3;\n return this.httpRequest.post(url, removeUndefinedFromObject(Object.assign({\n q: query\n }, options)), undefined, config);\n\n case 3:\n return _context.abrupt(\"return\", _context.sent);\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }, _callee, this);\n }));\n }\n /**\r\n * Search for documents into an index using the GET method\r\n *\r\n * @param query - Query string\r\n * @param options - Search options\r\n * @param config - Additional request configuration options\r\n * @returns Promise containing the search response\r\n */\n\n }, {\n key: \"searchGet\",\n value: function searchGet(query, options, config) {\n var _a, _b, _c, _d, _e, _f, _g;\n\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {\n var url, parseFilter, getParams;\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/search\");\n\n parseFilter = function parseFilter(filter) {\n if (typeof filter === 'string') return filter;else if (Array.isArray(filter)) throw new MeiliSearchError('The filter query parameter should be in string format when using searchGet');else return undefined;\n };\n\n getParams = Object.assign(Object.assign({\n q: query\n }, options), {\n filter: parseFilter(options === null || options === void 0 ? void 0 : options.filter),\n sort: (_a = options === null || options === void 0 ? void 0 : options.sort) === null || _a === void 0 ? void 0 : _a.join(','),\n facets: (_b = options === null || options === void 0 ? void 0 : options.facets) === null || _b === void 0 ? void 0 : _b.join(','),\n attributesToRetrieve: (_c = options === null || options === void 0 ? void 0 : options.attributesToRetrieve) === null || _c === void 0 ? void 0 : _c.join(','),\n attributesToCrop: (_d = options === null || options === void 0 ? void 0 : options.attributesToCrop) === null || _d === void 0 ? void 0 : _d.join(','),\n attributesToHighlight: (_e = options === null || options === void 0 ? void 0 : options.attributesToHighlight) === null || _e === void 0 ? void 0 : _e.join(','),\n vector: (_f = options === null || options === void 0 ? void 0 : options.vector) === null || _f === void 0 ? void 0 : _f.join(','),\n attributesToSearchOn: (_g = options === null || options === void 0 ? void 0 : options.attributesToSearchOn) === null || _g === void 0 ? void 0 : _g.join(',')\n });\n _context2.next = 5;\n return this.httpRequest.get(url, removeUndefinedFromObject(getParams), config);\n\n case 5:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, this);\n }));\n }\n /**\r\n * Search for facet values\r\n *\r\n * @param params - Parameters used to search on the facets\r\n * @param config - Additional request configuration options\r\n * @returns Promise containing the search response\r\n */\n\n }, {\n key: \"searchForFacetValues\",\n value: function searchForFacetValues(params, config) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {\n var url;\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/facet-search\");\n _context3.next = 3;\n return this.httpRequest.post(url, removeUndefinedFromObject(params), undefined, config);\n\n case 3:\n return _context3.abrupt(\"return\", _context3.sent);\n\n case 4:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3, this);\n }));\n } ///\n /// INDEX\n ///\n\n /**\r\n * Get index information.\r\n *\r\n * @returns Promise containing index information\r\n */\n\n }, {\n key: \"getRawInfo\",\n value: function getRawInfo() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {\n var url, res;\n return _regeneratorRuntime().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n url = \"indexes/\".concat(this.uid);\n _context4.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n res = _context4.sent;\n this.primaryKey = res.primaryKey;\n this.updatedAt = new Date(res.updatedAt);\n this.createdAt = new Date(res.createdAt);\n return _context4.abrupt(\"return\", res);\n\n case 8:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4, this);\n }));\n }\n /**\r\n * Fetch and update Index information.\r\n *\r\n * @returns Promise to the current Index object with updated information\r\n */\n\n }, {\n key: \"fetchInfo\",\n value: function fetchInfo() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {\n return _regeneratorRuntime().wrap(function _callee5$(_context5) {\n while (1) switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return this.getRawInfo();\n\n case 2:\n return _context5.abrupt(\"return\", this);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }, _callee5, this);\n }));\n }\n /**\r\n * Get Primary Key.\r\n *\r\n * @returns Promise containing the Primary Key of the index\r\n */\n\n }, {\n key: \"fetchPrimaryKey\",\n value: function fetchPrimaryKey() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {\n return _regeneratorRuntime().wrap(function _callee6$(_context6) {\n while (1) switch (_context6.prev = _context6.next) {\n case 0:\n _context6.next = 2;\n return this.getRawInfo();\n\n case 2:\n this.primaryKey = _context6.sent.primaryKey;\n return _context6.abrupt(\"return\", this.primaryKey);\n\n case 4:\n case \"end\":\n return _context6.stop();\n }\n }, _callee6, this);\n }));\n }\n /**\r\n * Create an index.\r\n *\r\n * @param uid - Unique identifier of the Index\r\n * @param options - Index options\r\n * @param config - Request configuration options\r\n * @returns Newly created Index object\r\n */\n\n }, {\n key: \"update\",\n value:\n /**\r\n * Update an index.\r\n *\r\n * @param data - Data to update\r\n * @returns Promise to the current Index object with updated information\r\n */\n function update(data) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee7$(_context7) {\n while (1) switch (_context7.prev = _context7.next) {\n case 0:\n url = \"indexes/\".concat(this.uid);\n _context7.next = 3;\n return this.httpRequest.patch(url, data);\n\n case 3:\n task = _context7.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context7.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context7.stop();\n }\n }, _callee7, this);\n }));\n }\n /**\r\n * Delete an index.\r\n *\r\n * @returns Promise which resolves when index is deleted successfully\r\n */\n\n }, {\n key: \"delete\",\n value: function _delete() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee8$(_context8) {\n while (1) switch (_context8.prev = _context8.next) {\n case 0:\n url = \"indexes/\".concat(this.uid);\n _context8.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context8.sent;\n return _context8.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context8.stop();\n }\n }, _callee8, this);\n }));\n } ///\n /// TASKS\n ///\n\n /**\r\n * Get the list of all the tasks of the index.\r\n *\r\n * @param parameters - Parameters to browse the tasks\r\n * @returns Promise containing all tasks\r\n */\n\n }, {\n key: \"getTasks\",\n value: function getTasks() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {\n return _regeneratorRuntime().wrap(function _callee9$(_context9) {\n while (1) switch (_context9.prev = _context9.next) {\n case 0:\n _context9.next = 2;\n return this.tasks.getTasks(Object.assign(Object.assign({}, parameters), {\n indexUids: [this.uid]\n }));\n\n case 2:\n return _context9.abrupt(\"return\", _context9.sent);\n\n case 3:\n case \"end\":\n return _context9.stop();\n }\n }, _callee9, this);\n }));\n }\n /**\r\n * Get one task of the index.\r\n *\r\n * @param taskUid - Task identifier\r\n * @returns Promise containing a task\r\n */\n\n }, {\n key: \"getTask\",\n value: function getTask(taskUid) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {\n return _regeneratorRuntime().wrap(function _callee10$(_context10) {\n while (1) switch (_context10.prev = _context10.next) {\n case 0:\n _context10.next = 2;\n return this.tasks.getTask(taskUid);\n\n case 2:\n return _context10.abrupt(\"return\", _context10.sent);\n\n case 3:\n case \"end\":\n return _context10.stop();\n }\n }, _callee10, this);\n }));\n }\n /**\r\n * Wait for multiple tasks to be processed.\r\n *\r\n * @param taskUids - Tasks identifier\r\n * @param waitOptions - Options on timeout and interval\r\n * @returns Promise containing an array of tasks\r\n */\n\n }, {\n key: \"waitForTasks\",\n value: function waitForTasks(taskUids) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$timeOutMs = _ref.timeOutMs,\n timeOutMs = _ref$timeOutMs === void 0 ? 5000 : _ref$timeOutMs,\n _ref$intervalMs = _ref.intervalMs,\n intervalMs = _ref$intervalMs === void 0 ? 50 : _ref$intervalMs;\n\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {\n return _regeneratorRuntime().wrap(function _callee11$(_context11) {\n while (1) switch (_context11.prev = _context11.next) {\n case 0:\n _context11.next = 2;\n return this.tasks.waitForTasks(taskUids, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n });\n\n case 2:\n return _context11.abrupt(\"return\", _context11.sent);\n\n case 3:\n case \"end\":\n return _context11.stop();\n }\n }, _callee11, this);\n }));\n }\n /**\r\n * Wait for a task to be processed.\r\n *\r\n * @param taskUid - Task identifier\r\n * @param waitOptions - Options on timeout and interval\r\n * @returns Promise containing an array of tasks\r\n */\n\n }, {\n key: \"waitForTask\",\n value: function waitForTask(taskUid) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref2$timeOutMs = _ref2.timeOutMs,\n timeOutMs = _ref2$timeOutMs === void 0 ? 5000 : _ref2$timeOutMs,\n _ref2$intervalMs = _ref2.intervalMs,\n intervalMs = _ref2$intervalMs === void 0 ? 50 : _ref2$intervalMs;\n\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee12() {\n return _regeneratorRuntime().wrap(function _callee12$(_context12) {\n while (1) switch (_context12.prev = _context12.next) {\n case 0:\n _context12.next = 2;\n return this.tasks.waitForTask(taskUid, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n });\n\n case 2:\n return _context12.abrupt(\"return\", _context12.sent);\n\n case 3:\n case \"end\":\n return _context12.stop();\n }\n }, _callee12, this);\n }));\n } ///\n /// STATS\n ///\n\n /**\r\n * Get stats of an index\r\n *\r\n * @returns Promise containing object with stats of the index\r\n */\n\n }, {\n key: \"getStats\",\n value: function getStats() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee13() {\n var url;\n return _regeneratorRuntime().wrap(function _callee13$(_context13) {\n while (1) switch (_context13.prev = _context13.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/stats\");\n _context13.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context13.abrupt(\"return\", _context13.sent);\n\n case 4:\n case \"end\":\n return _context13.stop();\n }\n }, _callee13, this);\n }));\n } ///\n /// DOCUMENTS\n ///\n\n /**\r\n * Get documents of an index.\r\n *\r\n * @param parameters - Parameters to browse the documents. Parameters can\r\n * contain the `filter` field only available in Meilisearch v1.2 and newer\r\n * @returns Promise containing the returned documents\r\n */\n\n }, {\n key: \"getDocuments\",\n value: function getDocuments() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _a;\n\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee14() {\n var url, _url, fields;\n\n return _regeneratorRuntime().wrap(function _callee14$(_context14) {\n while (1) switch (_context14.prev = _context14.next) {\n case 0:\n parameters = removeUndefinedFromObject(parameters); // In case `filter` is provided, use `POST /documents/fetch`\n\n if (!(parameters.filter !== undefined)) {\n _context14.next = 15;\n break;\n }\n\n _context14.prev = 2;\n url = \"indexes/\".concat(this.uid, \"/documents/fetch\");\n _context14.next = 6;\n return this.httpRequest.post(url, parameters);\n\n case 6:\n return _context14.abrupt(\"return\", _context14.sent);\n\n case 9:\n _context14.prev = 9;\n _context14.t0 = _context14[\"catch\"](2);\n\n if (_context14.t0 instanceof MeiliSearchCommunicationError) {\n _context14.t0.message = versionErrorHintMessage(_context14.t0.message, 'getDocuments');\n } else if (_context14.t0 instanceof MeiliSearchApiError) {\n _context14.t0.message = versionErrorHintMessage(_context14.t0.message, 'getDocuments');\n }\n\n throw _context14.t0;\n\n case 13:\n _context14.next = 20;\n break;\n\n case 15:\n _url = \"indexes/\".concat(this.uid, \"/documents\"); // Transform fields to query parameter string format\n\n fields = Array.isArray(parameters === null || parameters === void 0 ? void 0 : parameters.fields) ? {\n fields: (_a = parameters === null || parameters === void 0 ? void 0 : parameters.fields) === null || _a === void 0 ? void 0 : _a.join(',')\n } : {};\n _context14.next = 19;\n return this.httpRequest.get(_url, Object.assign(Object.assign({}, parameters), fields));\n\n case 19:\n return _context14.abrupt(\"return\", _context14.sent);\n\n case 20:\n case \"end\":\n return _context14.stop();\n }\n }, _callee14, this, [[2, 9]]);\n }));\n }\n /**\r\n * Get one document\r\n *\r\n * @param documentId - Document ID\r\n * @param parameters - Parameters applied on a document\r\n * @returns Promise containing Document response\r\n */\n\n }, {\n key: \"getDocument\",\n value: function getDocument(documentId, parameters) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee15() {\n var url, fields;\n return _regeneratorRuntime().wrap(function _callee15$(_context15) {\n while (1) switch (_context15.prev = _context15.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents/\").concat(documentId);\n\n fields = function () {\n var _a;\n\n if (Array.isArray(parameters === null || parameters === void 0 ? void 0 : parameters.fields)) {\n return (_a = parameters === null || parameters === void 0 ? void 0 : parameters.fields) === null || _a === void 0 ? void 0 : _a.join(',');\n }\n\n return undefined;\n }();\n\n _context15.next = 4;\n return this.httpRequest.get(url, removeUndefinedFromObject(Object.assign(Object.assign({}, parameters), {\n fields: fields\n })));\n\n case 4:\n return _context15.abrupt(\"return\", _context15.sent);\n\n case 5:\n case \"end\":\n return _context15.stop();\n }\n }, _callee15, this);\n }));\n }\n /**\r\n * Add or replace multiples documents to an index\r\n *\r\n * @param documents - Array of Document objects to add/replace\r\n * @param options - Options on document addition\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"addDocuments\",\n value: function addDocuments(documents, options) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee16() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee16$(_context16) {\n while (1) switch (_context16.prev = _context16.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents\");\n _context16.next = 3;\n return this.httpRequest.post(url, documents, options);\n\n case 3:\n task = _context16.sent;\n return _context16.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context16.stop();\n }\n }, _callee16, this);\n }));\n }\n /**\r\n * Add or replace multiples documents in a string format to an index. It only\r\n * supports csv, ndjson and json formats.\r\n *\r\n * @param documents - Documents provided in a string to add/replace\r\n * @param contentType - Content type of your document:\r\n * 'text/csv'|'application/x-ndjson'|'application/json'\r\n * @param options - Options on document addition\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"addDocumentsFromString\",\n value: function addDocumentsFromString(documents, contentType, queryParams) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee17() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee17$(_context17) {\n while (1) switch (_context17.prev = _context17.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents\");\n _context17.next = 3;\n return this.httpRequest.post(url, documents, queryParams, {\n headers: {\n 'Content-Type': contentType\n }\n });\n\n case 3:\n task = _context17.sent;\n return _context17.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context17.stop();\n }\n }, _callee17, this);\n }));\n }\n /**\r\n * Add or replace multiples documents to an index in batches\r\n *\r\n * @param documents - Array of Document objects to add/replace\r\n * @param batchSize - Size of the batch\r\n * @param options - Options on document addition\r\n * @returns Promise containing array of enqueued task objects for each batch\r\n */\n\n }, {\n key: \"addDocumentsInBatches\",\n value: function addDocumentsInBatches(documents) {\n var batchSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1000;\n var options = arguments.length > 2 ? arguments[2] : undefined;\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee18() {\n var updates, i;\n return _regeneratorRuntime().wrap(function _callee18$(_context18) {\n while (1) switch (_context18.prev = _context18.next) {\n case 0:\n updates = [];\n i = 0;\n\n case 2:\n if (!(i < documents.length)) {\n _context18.next = 11;\n break;\n }\n\n _context18.t0 = updates;\n _context18.next = 6;\n return this.addDocuments(documents.slice(i, i + batchSize), options);\n\n case 6:\n _context18.t1 = _context18.sent;\n\n _context18.t0.push.call(_context18.t0, _context18.t1);\n\n case 8:\n i += batchSize;\n _context18.next = 2;\n break;\n\n case 11:\n return _context18.abrupt(\"return\", updates);\n\n case 12:\n case \"end\":\n return _context18.stop();\n }\n }, _callee18, this);\n }));\n }\n /**\r\n * Add or update multiples documents to an index\r\n *\r\n * @param documents - Array of Document objects to add/update\r\n * @param options - Options on document update\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateDocuments\",\n value: function updateDocuments(documents, options) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee19() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee19$(_context19) {\n while (1) switch (_context19.prev = _context19.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents\");\n _context19.next = 3;\n return this.httpRequest.put(url, documents, options);\n\n case 3:\n task = _context19.sent;\n return _context19.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context19.stop();\n }\n }, _callee19, this);\n }));\n }\n /**\r\n * Add or update multiples documents to an index in batches\r\n *\r\n * @param documents - Array of Document objects to add/update\r\n * @param batchSize - Size of the batch\r\n * @param options - Options on document update\r\n * @returns Promise containing array of enqueued task objects for each batch\r\n */\n\n }, {\n key: \"updateDocumentsInBatches\",\n value: function updateDocumentsInBatches(documents) {\n var batchSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1000;\n var options = arguments.length > 2 ? arguments[2] : undefined;\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee20() {\n var updates, i;\n return _regeneratorRuntime().wrap(function _callee20$(_context20) {\n while (1) switch (_context20.prev = _context20.next) {\n case 0:\n updates = [];\n i = 0;\n\n case 2:\n if (!(i < documents.length)) {\n _context20.next = 11;\n break;\n }\n\n _context20.t0 = updates;\n _context20.next = 6;\n return this.updateDocuments(documents.slice(i, i + batchSize), options);\n\n case 6:\n _context20.t1 = _context20.sent;\n\n _context20.t0.push.call(_context20.t0, _context20.t1);\n\n case 8:\n i += batchSize;\n _context20.next = 2;\n break;\n\n case 11:\n return _context20.abrupt(\"return\", updates);\n\n case 12:\n case \"end\":\n return _context20.stop();\n }\n }, _callee20, this);\n }));\n }\n /**\r\n * Add or update multiples documents in a string format to an index. It only\r\n * supports csv, ndjson and json formats.\r\n *\r\n * @param documents - Documents provided in a string to add/update\r\n * @param contentType - Content type of your document:\r\n * 'text/csv'|'application/x-ndjson'|'application/json'\r\n * @param queryParams - Options on raw document addition\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateDocumentsFromString\",\n value: function updateDocumentsFromString(documents, contentType, queryParams) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee21() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee21$(_context21) {\n while (1) switch (_context21.prev = _context21.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents\");\n _context21.next = 3;\n return this.httpRequest.put(url, documents, queryParams, {\n headers: {\n 'Content-Type': contentType\n }\n });\n\n case 3:\n task = _context21.sent;\n return _context21.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context21.stop();\n }\n }, _callee21, this);\n }));\n }\n /**\r\n * Delete one document\r\n *\r\n * @param documentId - Id of Document to delete\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"deleteDocument\",\n value: function deleteDocument(documentId) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee22() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee22$(_context22) {\n while (1) switch (_context22.prev = _context22.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents/\").concat(documentId);\n _context22.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context22.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context22.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context22.stop();\n }\n }, _callee22, this);\n }));\n }\n /**\r\n * Delete multiples documents of an index.\r\n *\r\n * @param params - Params value can be:\r\n *\r\n * - DocumentsDeletionQuery: An object containing the parameters to customize\r\n * your document deletion. Only available in Meilisearch v1.2 and newer\r\n * - DocumentsIds: An array of document ids to delete\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"deleteDocuments\",\n value: function deleteDocuments(params) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee23() {\n var isDocumentsDeletionQuery, endpoint, url, task;\n return _regeneratorRuntime().wrap(function _callee23$(_context23) {\n while (1) switch (_context23.prev = _context23.next) {\n case 0:\n // If params is of type DocumentsDeletionQuery\n isDocumentsDeletionQuery = !Array.isArray(params) && _typeof(params) === 'object';\n endpoint = isDocumentsDeletionQuery ? 'documents/delete' : 'documents/delete-batch';\n url = \"indexes/\".concat(this.uid, \"/\").concat(endpoint);\n _context23.prev = 3;\n _context23.next = 6;\n return this.httpRequest.post(url, params);\n\n case 6:\n task = _context23.sent;\n return _context23.abrupt(\"return\", new EnqueuedTask(task));\n\n case 10:\n _context23.prev = 10;\n _context23.t0 = _context23[\"catch\"](3);\n\n if (_context23.t0 instanceof MeiliSearchCommunicationError && isDocumentsDeletionQuery) {\n _context23.t0.message = versionErrorHintMessage(_context23.t0.message, 'deleteDocuments');\n } else if (_context23.t0 instanceof MeiliSearchApiError) {\n _context23.t0.message = versionErrorHintMessage(_context23.t0.message, 'deleteDocuments');\n }\n\n throw _context23.t0;\n\n case 14:\n case \"end\":\n return _context23.stop();\n }\n }, _callee23, this, [[3, 10]]);\n }));\n }\n /**\r\n * Delete all documents of an index\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"deleteAllDocuments\",\n value: function deleteAllDocuments() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee24() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee24$(_context24) {\n while (1) switch (_context24.prev = _context24.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents\");\n _context24.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context24.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context24.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context24.stop();\n }\n }, _callee24, this);\n }));\n } ///\n /// SETTINGS\n ///\n\n /**\r\n * Retrieve all settings\r\n *\r\n * @returns Promise containing Settings object\r\n */\n\n }, {\n key: \"getSettings\",\n value: function getSettings() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee25() {\n var url;\n return _regeneratorRuntime().wrap(function _callee25$(_context25) {\n while (1) switch (_context25.prev = _context25.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings\");\n _context25.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context25.abrupt(\"return\", _context25.sent);\n\n case 4:\n case \"end\":\n return _context25.stop();\n }\n }, _callee25, this);\n }));\n }\n /**\r\n * Update all settings Any parameters not provided will be left unchanged.\r\n *\r\n * @param settings - Object containing parameters with their updated values\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateSettings\",\n value: function updateSettings(settings) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee26() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee26$(_context26) {\n while (1) switch (_context26.prev = _context26.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings\");\n _context26.next = 3;\n return this.httpRequest.patch(url, settings);\n\n case 3:\n task = _context26.sent;\n task.enqueued = new Date(task.enqueuedAt);\n return _context26.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context26.stop();\n }\n }, _callee26, this);\n }));\n }\n /**\r\n * Reset settings.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetSettings\",\n value: function resetSettings() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee27() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee27$(_context27) {\n while (1) switch (_context27.prev = _context27.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings\");\n _context27.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context27.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context27.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context27.stop();\n }\n }, _callee27, this);\n }));\n } ///\n /// PAGINATION SETTINGS\n ///\n\n /**\r\n * Get the pagination settings.\r\n *\r\n * @returns Promise containing object of pagination settings\r\n */\n\n }, {\n key: \"getPagination\",\n value: function getPagination() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee28() {\n var url;\n return _regeneratorRuntime().wrap(function _callee28$(_context28) {\n while (1) switch (_context28.prev = _context28.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/pagination\");\n _context28.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context28.abrupt(\"return\", _context28.sent);\n\n case 4:\n case \"end\":\n return _context28.stop();\n }\n }, _callee28, this);\n }));\n }\n /**\r\n * Update the pagination settings.\r\n *\r\n * @param pagination - Pagination object\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updatePagination\",\n value: function updatePagination(pagination) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee29() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee29$(_context29) {\n while (1) switch (_context29.prev = _context29.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/pagination\");\n _context29.next = 3;\n return this.httpRequest.patch(url, pagination);\n\n case 3:\n task = _context29.sent;\n return _context29.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context29.stop();\n }\n }, _callee29, this);\n }));\n }\n /**\r\n * Reset the pagination settings.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetPagination\",\n value: function resetPagination() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee30() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee30$(_context30) {\n while (1) switch (_context30.prev = _context30.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/pagination\");\n _context30.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context30.sent;\n return _context30.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context30.stop();\n }\n }, _callee30, this);\n }));\n } ///\n /// SYNONYMS\n ///\n\n /**\r\n * Get the list of all synonyms\r\n *\r\n * @returns Promise containing object of synonym mappings\r\n */\n\n }, {\n key: \"getSynonyms\",\n value: function getSynonyms() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee31() {\n var url;\n return _regeneratorRuntime().wrap(function _callee31$(_context31) {\n while (1) switch (_context31.prev = _context31.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/synonyms\");\n _context31.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context31.abrupt(\"return\", _context31.sent);\n\n case 4:\n case \"end\":\n return _context31.stop();\n }\n }, _callee31, this);\n }));\n }\n /**\r\n * Update the list of synonyms. Overwrite the old list.\r\n *\r\n * @param synonyms - Mapping of synonyms with their associated words\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateSynonyms\",\n value: function updateSynonyms(synonyms) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee32() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee32$(_context32) {\n while (1) switch (_context32.prev = _context32.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/synonyms\");\n _context32.next = 3;\n return this.httpRequest.put(url, synonyms);\n\n case 3:\n task = _context32.sent;\n return _context32.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context32.stop();\n }\n }, _callee32, this);\n }));\n }\n /**\r\n * Reset the synonym list to be empty again\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetSynonyms\",\n value: function resetSynonyms() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee33() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee33$(_context33) {\n while (1) switch (_context33.prev = _context33.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/synonyms\");\n _context33.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context33.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context33.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context33.stop();\n }\n }, _callee33, this);\n }));\n } ///\n /// STOP WORDS\n ///\n\n /**\r\n * Get the list of all stop-words\r\n *\r\n * @returns Promise containing array of stop-words\r\n */\n\n }, {\n key: \"getStopWords\",\n value: function getStopWords() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee34() {\n var url;\n return _regeneratorRuntime().wrap(function _callee34$(_context34) {\n while (1) switch (_context34.prev = _context34.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/stop-words\");\n _context34.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context34.abrupt(\"return\", _context34.sent);\n\n case 4:\n case \"end\":\n return _context34.stop();\n }\n }, _callee34, this);\n }));\n }\n /**\r\n * Update the list of stop-words. Overwrite the old list.\r\n *\r\n * @param stopWords - Array of strings that contains the stop-words.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateStopWords\",\n value: function updateStopWords(stopWords) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee35() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee35$(_context35) {\n while (1) switch (_context35.prev = _context35.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/stop-words\");\n _context35.next = 3;\n return this.httpRequest.put(url, stopWords);\n\n case 3:\n task = _context35.sent;\n return _context35.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context35.stop();\n }\n }, _callee35, this);\n }));\n }\n /**\r\n * Reset the stop-words list to be empty again\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetStopWords\",\n value: function resetStopWords() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee36() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee36$(_context36) {\n while (1) switch (_context36.prev = _context36.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/stop-words\");\n _context36.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context36.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context36.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context36.stop();\n }\n }, _callee36, this);\n }));\n } ///\n /// RANKING RULES\n ///\n\n /**\r\n * Get the list of all ranking-rules\r\n *\r\n * @returns Promise containing array of ranking-rules\r\n */\n\n }, {\n key: \"getRankingRules\",\n value: function getRankingRules() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee37() {\n var url;\n return _regeneratorRuntime().wrap(function _callee37$(_context37) {\n while (1) switch (_context37.prev = _context37.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/ranking-rules\");\n _context37.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context37.abrupt(\"return\", _context37.sent);\n\n case 4:\n case \"end\":\n return _context37.stop();\n }\n }, _callee37, this);\n }));\n }\n /**\r\n * Update the list of ranking-rules. Overwrite the old list.\r\n *\r\n * @param rankingRules - Array that contain ranking rules sorted by order of\r\n * importance.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateRankingRules\",\n value: function updateRankingRules(rankingRules) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee38() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee38$(_context38) {\n while (1) switch (_context38.prev = _context38.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/ranking-rules\");\n _context38.next = 3;\n return this.httpRequest.put(url, rankingRules);\n\n case 3:\n task = _context38.sent;\n return _context38.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context38.stop();\n }\n }, _callee38, this);\n }));\n }\n /**\r\n * Reset the ranking rules list to its default value\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetRankingRules\",\n value: function resetRankingRules() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee39() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee39$(_context39) {\n while (1) switch (_context39.prev = _context39.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/ranking-rules\");\n _context39.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context39.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context39.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context39.stop();\n }\n }, _callee39, this);\n }));\n } ///\n /// DISTINCT ATTRIBUTE\n ///\n\n /**\r\n * Get the distinct-attribute\r\n *\r\n * @returns Promise containing the distinct-attribute of the index\r\n */\n\n }, {\n key: \"getDistinctAttribute\",\n value: function getDistinctAttribute() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee40() {\n var url;\n return _regeneratorRuntime().wrap(function _callee40$(_context40) {\n while (1) switch (_context40.prev = _context40.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/distinct-attribute\");\n _context40.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context40.abrupt(\"return\", _context40.sent);\n\n case 4:\n case \"end\":\n return _context40.stop();\n }\n }, _callee40, this);\n }));\n }\n /**\r\n * Update the distinct-attribute.\r\n *\r\n * @param distinctAttribute - Field name of the distinct-attribute\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateDistinctAttribute\",\n value: function updateDistinctAttribute(distinctAttribute) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee41() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee41$(_context41) {\n while (1) switch (_context41.prev = _context41.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/distinct-attribute\");\n _context41.next = 3;\n return this.httpRequest.put(url, distinctAttribute);\n\n case 3:\n task = _context41.sent;\n return _context41.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context41.stop();\n }\n }, _callee41, this);\n }));\n }\n /**\r\n * Reset the distinct-attribute.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetDistinctAttribute\",\n value: function resetDistinctAttribute() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee42() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee42$(_context42) {\n while (1) switch (_context42.prev = _context42.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/distinct-attribute\");\n _context42.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context42.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context42.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context42.stop();\n }\n }, _callee42, this);\n }));\n } ///\n /// FILTERABLE ATTRIBUTES\n ///\n\n /**\r\n * Get the filterable-attributes\r\n *\r\n * @returns Promise containing an array of filterable-attributes\r\n */\n\n }, {\n key: \"getFilterableAttributes\",\n value: function getFilterableAttributes() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee43() {\n var url;\n return _regeneratorRuntime().wrap(function _callee43$(_context43) {\n while (1) switch (_context43.prev = _context43.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/filterable-attributes\");\n _context43.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context43.abrupt(\"return\", _context43.sent);\n\n case 4:\n case \"end\":\n return _context43.stop();\n }\n }, _callee43, this);\n }));\n }\n /**\r\n * Update the filterable-attributes.\r\n *\r\n * @param filterableAttributes - Array of strings containing the attributes\r\n * that can be used as filters at query time\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateFilterableAttributes\",\n value: function updateFilterableAttributes(filterableAttributes) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee44() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee44$(_context44) {\n while (1) switch (_context44.prev = _context44.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/filterable-attributes\");\n _context44.next = 3;\n return this.httpRequest.put(url, filterableAttributes);\n\n case 3:\n task = _context44.sent;\n return _context44.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context44.stop();\n }\n }, _callee44, this);\n }));\n }\n /**\r\n * Reset the filterable-attributes.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetFilterableAttributes\",\n value: function resetFilterableAttributes() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee45() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee45$(_context45) {\n while (1) switch (_context45.prev = _context45.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/filterable-attributes\");\n _context45.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context45.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context45.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context45.stop();\n }\n }, _callee45, this);\n }));\n } ///\n /// SORTABLE ATTRIBUTES\n ///\n\n /**\r\n * Get the sortable-attributes\r\n *\r\n * @returns Promise containing array of sortable-attributes\r\n */\n\n }, {\n key: \"getSortableAttributes\",\n value: function getSortableAttributes() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee46() {\n var url;\n return _regeneratorRuntime().wrap(function _callee46$(_context46) {\n while (1) switch (_context46.prev = _context46.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/sortable-attributes\");\n _context46.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context46.abrupt(\"return\", _context46.sent);\n\n case 4:\n case \"end\":\n return _context46.stop();\n }\n }, _callee46, this);\n }));\n }\n /**\r\n * Update the sortable-attributes.\r\n *\r\n * @param sortableAttributes - Array of strings containing the attributes that\r\n * can be used to sort search results at query time\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateSortableAttributes\",\n value: function updateSortableAttributes(sortableAttributes) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee47() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee47$(_context47) {\n while (1) switch (_context47.prev = _context47.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/sortable-attributes\");\n _context47.next = 3;\n return this.httpRequest.put(url, sortableAttributes);\n\n case 3:\n task = _context47.sent;\n return _context47.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context47.stop();\n }\n }, _callee47, this);\n }));\n }\n /**\r\n * Reset the sortable-attributes.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetSortableAttributes\",\n value: function resetSortableAttributes() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee48() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee48$(_context48) {\n while (1) switch (_context48.prev = _context48.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/sortable-attributes\");\n _context48.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context48.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context48.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context48.stop();\n }\n }, _callee48, this);\n }));\n } ///\n /// SEARCHABLE ATTRIBUTE\n ///\n\n /**\r\n * Get the searchable-attributes\r\n *\r\n * @returns Promise containing array of searchable-attributes\r\n */\n\n }, {\n key: \"getSearchableAttributes\",\n value: function getSearchableAttributes() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee49() {\n var url;\n return _regeneratorRuntime().wrap(function _callee49$(_context49) {\n while (1) switch (_context49.prev = _context49.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/searchable-attributes\");\n _context49.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context49.abrupt(\"return\", _context49.sent);\n\n case 4:\n case \"end\":\n return _context49.stop();\n }\n }, _callee49, this);\n }));\n }\n /**\r\n * Update the searchable-attributes.\r\n *\r\n * @param searchableAttributes - Array of strings that contains searchable\r\n * attributes sorted by order of importance(most to least important)\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateSearchableAttributes\",\n value: function updateSearchableAttributes(searchableAttributes) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee50() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee50$(_context50) {\n while (1) switch (_context50.prev = _context50.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/searchable-attributes\");\n _context50.next = 3;\n return this.httpRequest.put(url, searchableAttributes);\n\n case 3:\n task = _context50.sent;\n return _context50.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context50.stop();\n }\n }, _callee50, this);\n }));\n }\n /**\r\n * Reset the searchable-attributes.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetSearchableAttributes\",\n value: function resetSearchableAttributes() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee51() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee51$(_context51) {\n while (1) switch (_context51.prev = _context51.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/searchable-attributes\");\n _context51.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context51.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context51.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context51.stop();\n }\n }, _callee51, this);\n }));\n } ///\n /// DISPLAYED ATTRIBUTE\n ///\n\n /**\r\n * Get the displayed-attributes\r\n *\r\n * @returns Promise containing array of displayed-attributes\r\n */\n\n }, {\n key: \"getDisplayedAttributes\",\n value: function getDisplayedAttributes() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee52() {\n var url;\n return _regeneratorRuntime().wrap(function _callee52$(_context52) {\n while (1) switch (_context52.prev = _context52.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/displayed-attributes\");\n _context52.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context52.abrupt(\"return\", _context52.sent);\n\n case 4:\n case \"end\":\n return _context52.stop();\n }\n }, _callee52, this);\n }));\n }\n /**\r\n * Update the displayed-attributes.\r\n *\r\n * @param displayedAttributes - Array of strings that contains attributes of\r\n * an index to display\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateDisplayedAttributes\",\n value: function updateDisplayedAttributes(displayedAttributes) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee53() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee53$(_context53) {\n while (1) switch (_context53.prev = _context53.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/displayed-attributes\");\n _context53.next = 3;\n return this.httpRequest.put(url, displayedAttributes);\n\n case 3:\n task = _context53.sent;\n return _context53.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context53.stop();\n }\n }, _callee53, this);\n }));\n }\n /**\r\n * Reset the displayed-attributes.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetDisplayedAttributes\",\n value: function resetDisplayedAttributes() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee54() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee54$(_context54) {\n while (1) switch (_context54.prev = _context54.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/displayed-attributes\");\n _context54.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context54.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context54.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context54.stop();\n }\n }, _callee54, this);\n }));\n } ///\n /// TYPO TOLERANCE\n ///\n\n /**\r\n * Get the typo tolerance settings.\r\n *\r\n * @returns Promise containing the typo tolerance settings.\r\n */\n\n }, {\n key: \"getTypoTolerance\",\n value: function getTypoTolerance() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee55() {\n var url;\n return _regeneratorRuntime().wrap(function _callee55$(_context55) {\n while (1) switch (_context55.prev = _context55.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/typo-tolerance\");\n _context55.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context55.abrupt(\"return\", _context55.sent);\n\n case 4:\n case \"end\":\n return _context55.stop();\n }\n }, _callee55, this);\n }));\n }\n /**\r\n * Update the typo tolerance settings.\r\n *\r\n * @param typoTolerance - Object containing the custom typo tolerance\r\n * settings.\r\n * @returns Promise containing object of the enqueued update\r\n */\n\n }, {\n key: \"updateTypoTolerance\",\n value: function updateTypoTolerance(typoTolerance) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee56() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee56$(_context56) {\n while (1) switch (_context56.prev = _context56.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/typo-tolerance\");\n _context56.next = 3;\n return this.httpRequest.patch(url, typoTolerance);\n\n case 3:\n task = _context56.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context56.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context56.stop();\n }\n }, _callee56, this);\n }));\n }\n /**\r\n * Reset the typo tolerance settings.\r\n *\r\n * @returns Promise containing object of the enqueued update\r\n */\n\n }, {\n key: \"resetTypoTolerance\",\n value: function resetTypoTolerance() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee57() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee57$(_context57) {\n while (1) switch (_context57.prev = _context57.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/typo-tolerance\");\n _context57.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context57.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context57.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context57.stop();\n }\n }, _callee57, this);\n }));\n } ///\n /// FACETING\n ///\n\n /**\r\n * Get the faceting settings.\r\n *\r\n * @returns Promise containing object of faceting index settings\r\n */\n\n }, {\n key: \"getFaceting\",\n value: function getFaceting() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee58() {\n var url;\n return _regeneratorRuntime().wrap(function _callee58$(_context58) {\n while (1) switch (_context58.prev = _context58.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/faceting\");\n _context58.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context58.abrupt(\"return\", _context58.sent);\n\n case 4:\n case \"end\":\n return _context58.stop();\n }\n }, _callee58, this);\n }));\n }\n /**\r\n * Update the faceting settings.\r\n *\r\n * @param faceting - Faceting index settings object\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"updateFaceting\",\n value: function updateFaceting(faceting) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee59() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee59$(_context59) {\n while (1) switch (_context59.prev = _context59.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/faceting\");\n _context59.next = 3;\n return this.httpRequest.patch(url, faceting);\n\n case 3:\n task = _context59.sent;\n return _context59.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context59.stop();\n }\n }, _callee59, this);\n }));\n }\n /**\r\n * Reset the faceting settings.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetFaceting\",\n value: function resetFaceting() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee60() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee60$(_context60) {\n while (1) switch (_context60.prev = _context60.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/faceting\");\n _context60.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context60.sent;\n return _context60.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context60.stop();\n }\n }, _callee60, this);\n }));\n } ///\n /// SEPARATOR TOKENS\n ///\n\n /**\r\n * Get the list of all separator tokens.\r\n *\r\n * @returns Promise containing array of separator tokens\r\n */\n\n }, {\n key: \"getSeparatorTokens\",\n value: function getSeparatorTokens() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee61() {\n var url;\n return _regeneratorRuntime().wrap(function _callee61$(_context61) {\n while (1) switch (_context61.prev = _context61.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/separator-tokens\");\n _context61.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context61.abrupt(\"return\", _context61.sent);\n\n case 4:\n case \"end\":\n return _context61.stop();\n }\n }, _callee61, this);\n }));\n }\n /**\r\n * Update the list of separator tokens. Overwrite the old list.\r\n *\r\n * @param separatorTokens - Array that contains separator tokens.\r\n * @returns Promise containing an EnqueuedTask or null\r\n */\n\n }, {\n key: \"updateSeparatorTokens\",\n value: function updateSeparatorTokens(separatorTokens) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee62() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee62$(_context62) {\n while (1) switch (_context62.prev = _context62.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/separator-tokens\");\n _context62.next = 3;\n return this.httpRequest.put(url, separatorTokens);\n\n case 3:\n task = _context62.sent;\n return _context62.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context62.stop();\n }\n }, _callee62, this);\n }));\n }\n /**\r\n * Reset the separator tokens list to its default value\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetSeparatorTokens\",\n value: function resetSeparatorTokens() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee63() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee63$(_context63) {\n while (1) switch (_context63.prev = _context63.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/separator-tokens\");\n _context63.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context63.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context63.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context63.stop();\n }\n }, _callee63, this);\n }));\n } ///\n /// NON-SEPARATOR TOKENS\n ///\n\n /**\r\n * Get the list of all non-separator tokens.\r\n *\r\n * @returns Promise containing array of non-separator tokens\r\n */\n\n }, {\n key: \"getNonSeparatorTokens\",\n value: function getNonSeparatorTokens() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee64() {\n var url;\n return _regeneratorRuntime().wrap(function _callee64$(_context64) {\n while (1) switch (_context64.prev = _context64.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/non-separator-tokens\");\n _context64.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context64.abrupt(\"return\", _context64.sent);\n\n case 4:\n case \"end\":\n return _context64.stop();\n }\n }, _callee64, this);\n }));\n }\n /**\r\n * Update the list of non-separator tokens. Overwrite the old list.\r\n *\r\n * @param nonSeparatorTokens - Array that contains non-separator tokens.\r\n * @returns Promise containing an EnqueuedTask or null\r\n */\n\n }, {\n key: \"updateNonSeparatorTokens\",\n value: function updateNonSeparatorTokens(nonSeparatorTokens) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee65() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee65$(_context65) {\n while (1) switch (_context65.prev = _context65.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/non-separator-tokens\");\n _context65.next = 3;\n return this.httpRequest.put(url, nonSeparatorTokens);\n\n case 3:\n task = _context65.sent;\n return _context65.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context65.stop();\n }\n }, _callee65, this);\n }));\n }\n /**\r\n * Reset the non-separator tokens list to its default value\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetNonSeparatorTokens\",\n value: function resetNonSeparatorTokens() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee66() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee66$(_context66) {\n while (1) switch (_context66.prev = _context66.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/non-separator-tokens\");\n _context66.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context66.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context66.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context66.stop();\n }\n }, _callee66, this);\n }));\n } ///\n /// DICTIONARY\n ///\n\n /**\r\n * Get the dictionary settings of a Meilisearch index.\r\n *\r\n * @returns Promise containing the dictionary settings\r\n */\n\n }, {\n key: \"getDictionary\",\n value: function getDictionary() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee67() {\n var url;\n return _regeneratorRuntime().wrap(function _callee67$(_context67) {\n while (1) switch (_context67.prev = _context67.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/dictionary\");\n _context67.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context67.abrupt(\"return\", _context67.sent);\n\n case 4:\n case \"end\":\n return _context67.stop();\n }\n }, _callee67, this);\n }));\n }\n /**\r\n * Update the the dictionary settings. Overwrite the old settings.\r\n *\r\n * @param dictionary - Array that contains the new dictionary settings.\r\n * @returns Promise containing an EnqueuedTask or null\r\n */\n\n }, {\n key: \"updateDictionary\",\n value: function updateDictionary(dictionary) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee68() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee68$(_context68) {\n while (1) switch (_context68.prev = _context68.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/dictionary\");\n _context68.next = 3;\n return this.httpRequest.put(url, dictionary);\n\n case 3:\n task = _context68.sent;\n return _context68.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context68.stop();\n }\n }, _callee68, this);\n }));\n }\n /**\r\n * Reset the dictionary settings to its default value\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"resetDictionary\",\n value: function resetDictionary() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee69() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee69$(_context69) {\n while (1) switch (_context69.prev = _context69.next) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/dictionary\");\n _context69.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n task = _context69.sent;\n task.enqueuedAt = new Date(task.enqueuedAt);\n return _context69.abrupt(\"return\", task);\n\n case 6:\n case \"end\":\n return _context69.stop();\n }\n }, _callee69, this);\n }));\n }\n }], [{\n key: \"create\",\n value: function create(uid) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var config = arguments.length > 2 ? arguments[2] : undefined;\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee70() {\n var url, req, task;\n return _regeneratorRuntime().wrap(function _callee70$(_context70) {\n while (1) switch (_context70.prev = _context70.next) {\n case 0:\n url = \"indexes\";\n req = new HttpRequests(config);\n _context70.next = 4;\n return req.post(url, Object.assign(Object.assign({}, options), {\n uid: uid\n }));\n\n case 4:\n task = _context70.sent;\n return _context70.abrupt(\"return\", new EnqueuedTask(task));\n\n case 6:\n case \"end\":\n return _context70.stop();\n }\n }, _callee70);\n }));\n }\n }]);\n\n return Index;\n }();\n\n /*\r\n * Bundle: MeiliSearch\r\n * Project: MeiliSearch - Javascript API\r\n * Author: Quentin de Quelen <quentin@meilisearch.com>\r\n * Copyright: 2019, MeiliSearch\r\n */\n\n var Client = /*#__PURE__*/function () {\n /**\r\n * Creates new MeiliSearch instance\r\n *\r\n * @param config - Configuration object\r\n */\n function Client(config) {\n _classCallCheck(this, Client);\n\n this.config = config;\n this.httpRequest = new HttpRequests(config);\n this.tasks = new TaskClient(config);\n }\n /**\r\n * Return an Index instance\r\n *\r\n * @param indexUid - The index UID\r\n * @returns Instance of Index\r\n */\n\n\n _createClass(Client, [{\n key: \"index\",\n value: function index(indexUid) {\n return new Index(this.config, indexUid);\n }\n /**\r\n * Gather information about an index by calling MeiliSearch and return an\r\n * Index instance with the gathered information\r\n *\r\n * @param indexUid - The index UID\r\n * @returns Promise returning Index instance\r\n */\n\n }, {\n key: \"getIndex\",\n value: function getIndex(indexUid) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", new Index(this.config, indexUid).fetchInfo());\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }, _callee, this);\n }));\n }\n /**\r\n * Gather information about an index by calling MeiliSearch and return the raw\r\n * JSON response\r\n *\r\n * @param indexUid - The index UID\r\n * @returns Promise returning index information\r\n */\n\n }, {\n key: \"getRawIndex\",\n value: function getRawIndex(indexUid) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", new Index(this.config, indexUid).getRawInfo());\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, this);\n }));\n }\n /**\r\n * Get all the indexes as Index instances.\r\n *\r\n * @param parameters - Parameters to browse the indexes\r\n * @returns Promise returning array of raw index information\r\n */\n\n }, {\n key: \"getIndexes\",\n value: function getIndexes() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {\n var _this = this;\n\n var rawIndexes, indexes;\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return this.getRawIndexes(parameters);\n\n case 2:\n rawIndexes = _context3.sent;\n indexes = rawIndexes.results.map(function (index) {\n return new Index(_this.config, index.uid, index.primaryKey);\n });\n return _context3.abrupt(\"return\", Object.assign(Object.assign({}, rawIndexes), {\n results: indexes\n }));\n\n case 5:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3, this);\n }));\n }\n /**\r\n * Get all the indexes in their raw value (no Index instances).\r\n *\r\n * @param parameters - Parameters to browse the indexes\r\n * @returns Promise returning array of raw index information\r\n */\n\n }, {\n key: \"getRawIndexes\",\n value: function getRawIndexes() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {\n var url;\n return _regeneratorRuntime().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n url = \"indexes\";\n _context4.next = 3;\n return this.httpRequest.get(url, parameters);\n\n case 3:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 4:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4, this);\n }));\n }\n /**\r\n * Create a new index\r\n *\r\n * @param uid - The index UID\r\n * @param options - Index options\r\n * @returns Promise returning Index instance\r\n */\n\n }, {\n key: \"createIndex\",\n value: function createIndex(uid) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {\n return _regeneratorRuntime().wrap(function _callee5$(_context5) {\n while (1) switch (_context5.prev = _context5.next) {\n case 0:\n _context5.next = 2;\n return Index.create(uid, options, this.config);\n\n case 2:\n return _context5.abrupt(\"return\", _context5.sent);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }, _callee5, this);\n }));\n }\n /**\r\n * Update an index\r\n *\r\n * @param uid - The index UID\r\n * @param options - Index options to update\r\n * @returns Promise returning Index instance after updating\r\n */\n\n }, {\n key: \"updateIndex\",\n value: function updateIndex(uid) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {\n return _regeneratorRuntime().wrap(function _callee6$(_context6) {\n while (1) switch (_context6.prev = _context6.next) {\n case 0:\n _context6.next = 2;\n return new Index(this.config, uid).update(options);\n\n case 2:\n return _context6.abrupt(\"return\", _context6.sent);\n\n case 3:\n case \"end\":\n return _context6.stop();\n }\n }, _callee6, this);\n }));\n }\n /**\r\n * Delete an index\r\n *\r\n * @param uid - The index UID\r\n * @returns Promise which resolves when index is deleted successfully\r\n */\n\n }, {\n key: \"deleteIndex\",\n value: function deleteIndex(uid) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {\n return _regeneratorRuntime().wrap(function _callee7$(_context7) {\n while (1) switch (_context7.prev = _context7.next) {\n case 0:\n _context7.next = 2;\n return new Index(this.config, uid).delete();\n\n case 2:\n return _context7.abrupt(\"return\", _context7.sent);\n\n case 3:\n case \"end\":\n return _context7.stop();\n }\n }, _callee7, this);\n }));\n }\n /**\r\n * Deletes an index if it already exists.\r\n *\r\n * @param uid - The index UID\r\n * @returns Promise which resolves to true when index exists and is deleted\r\n * successfully, otherwise false if it does not exist\r\n */\n\n }, {\n key: \"deleteIndexIfExists\",\n value: function deleteIndexIfExists(uid) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {\n return _regeneratorRuntime().wrap(function _callee8$(_context8) {\n while (1) switch (_context8.prev = _context8.next) {\n case 0:\n _context8.prev = 0;\n _context8.next = 3;\n return this.deleteIndex(uid);\n\n case 3:\n return _context8.abrupt(\"return\", true);\n\n case 6:\n _context8.prev = 6;\n _context8.t0 = _context8[\"catch\"](0);\n\n if (!(_context8.t0.code === \"index_not_found\"\n /* ErrorStatusCode.INDEX_NOT_FOUND */\n )) {\n _context8.next = 10;\n break;\n }\n\n return _context8.abrupt(\"return\", false);\n\n case 10:\n throw _context8.t0;\n\n case 11:\n case \"end\":\n return _context8.stop();\n }\n }, _callee8, this, [[0, 6]]);\n }));\n }\n /**\r\n * Swaps a list of index tuples.\r\n *\r\n * @param params - List of indexes tuples to swap.\r\n * @returns Promise returning object of the enqueued task\r\n */\n\n }, {\n key: \"swapIndexes\",\n value: function swapIndexes(params) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {\n var url;\n return _regeneratorRuntime().wrap(function _callee9$(_context9) {\n while (1) switch (_context9.prev = _context9.next) {\n case 0:\n url = '/swap-indexes';\n _context9.next = 3;\n return this.httpRequest.post(url, params);\n\n case 3:\n return _context9.abrupt(\"return\", _context9.sent);\n\n case 4:\n case \"end\":\n return _context9.stop();\n }\n }, _callee9, this);\n }));\n } ///\n /// Multi Search\n ///\n\n /**\r\n * Perform multiple search queries.\r\n *\r\n * It is possible to make multiple search queries on the same index or on\r\n * different ones\r\n *\r\n * @example\r\n *\r\n * ```ts\r\n * client.multiSearch({\r\n * queries: [\r\n * { indexUid: 'movies', q: 'wonder' },\r\n * { indexUid: 'books', q: 'flower' },\r\n * ],\r\n * })\r\n * ```\r\n *\r\n * @param queries - Search queries\r\n * @param config - Additional request configuration options\r\n * @returns Promise containing the search responses\r\n */\n\n }, {\n key: \"multiSearch\",\n value: function multiSearch(queries, config) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {\n var url;\n return _regeneratorRuntime().wrap(function _callee10$(_context10) {\n while (1) switch (_context10.prev = _context10.next) {\n case 0:\n url = \"multi-search\";\n _context10.next = 3;\n return this.httpRequest.post(url, queries, undefined, config);\n\n case 3:\n return _context10.abrupt(\"return\", _context10.sent);\n\n case 4:\n case \"end\":\n return _context10.stop();\n }\n }, _callee10, this);\n }));\n } ///\n /// TASKS\n ///\n\n /**\r\n * Get the list of all client tasks\r\n *\r\n * @param parameters - Parameters to browse the tasks\r\n * @returns Promise returning all tasks\r\n */\n\n }, {\n key: \"getTasks\",\n value: function getTasks() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {\n return _regeneratorRuntime().wrap(function _callee11$(_context11) {\n while (1) switch (_context11.prev = _context11.next) {\n case 0:\n _context11.next = 2;\n return this.tasks.getTasks(parameters);\n\n case 2:\n return _context11.abrupt(\"return\", _context11.sent);\n\n case 3:\n case \"end\":\n return _context11.stop();\n }\n }, _callee11, this);\n }));\n }\n /**\r\n * Get one task on the client scope\r\n *\r\n * @param taskUid - Task identifier\r\n * @returns Promise returning a task\r\n */\n\n }, {\n key: \"getTask\",\n value: function getTask(taskUid) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee12() {\n return _regeneratorRuntime().wrap(function _callee12$(_context12) {\n while (1) switch (_context12.prev = _context12.next) {\n case 0:\n _context12.next = 2;\n return this.tasks.getTask(taskUid);\n\n case 2:\n return _context12.abrupt(\"return\", _context12.sent);\n\n case 3:\n case \"end\":\n return _context12.stop();\n }\n }, _callee12, this);\n }));\n }\n /**\r\n * Wait for multiple tasks to be finished.\r\n *\r\n * @param taskUids - Tasks identifier\r\n * @param waitOptions - Options on timeout and interval\r\n * @returns Promise returning an array of tasks\r\n */\n\n }, {\n key: \"waitForTasks\",\n value: function waitForTasks(taskUids) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$timeOutMs = _ref.timeOutMs,\n timeOutMs = _ref$timeOutMs === void 0 ? 5000 : _ref$timeOutMs,\n _ref$intervalMs = _ref.intervalMs,\n intervalMs = _ref$intervalMs === void 0 ? 50 : _ref$intervalMs;\n\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee13() {\n return _regeneratorRuntime().wrap(function _callee13$(_context13) {\n while (1) switch (_context13.prev = _context13.next) {\n case 0:\n _context13.next = 2;\n return this.tasks.waitForTasks(taskUids, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n });\n\n case 2:\n return _context13.abrupt(\"return\", _context13.sent);\n\n case 3:\n case \"end\":\n return _context13.stop();\n }\n }, _callee13, this);\n }));\n }\n /**\r\n * Wait for a task to be finished.\r\n *\r\n * @param taskUid - Task identifier\r\n * @param waitOptions - Options on timeout and interval\r\n * @returns Promise returning an array of tasks\r\n */\n\n }, {\n key: \"waitForTask\",\n value: function waitForTask(taskUid) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref2$timeOutMs = _ref2.timeOutMs,\n timeOutMs = _ref2$timeOutMs === void 0 ? 5000 : _ref2$timeOutMs,\n _ref2$intervalMs = _ref2.intervalMs,\n intervalMs = _ref2$intervalMs === void 0 ? 50 : _ref2$intervalMs;\n\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee14() {\n return _regeneratorRuntime().wrap(function _callee14$(_context14) {\n while (1) switch (_context14.prev = _context14.next) {\n case 0:\n _context14.next = 2;\n return this.tasks.waitForTask(taskUid, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n });\n\n case 2:\n return _context14.abrupt(\"return\", _context14.sent);\n\n case 3:\n case \"end\":\n return _context14.stop();\n }\n }, _callee14, this);\n }));\n }\n /**\r\n * Cancel a list of enqueued or processing tasks.\r\n *\r\n * @param parameters - Parameters to filter the tasks.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"cancelTasks\",\n value: function cancelTasks(parameters) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee15() {\n return _regeneratorRuntime().wrap(function _callee15$(_context15) {\n while (1) switch (_context15.prev = _context15.next) {\n case 0:\n _context15.next = 2;\n return this.tasks.cancelTasks(parameters);\n\n case 2:\n return _context15.abrupt(\"return\", _context15.sent);\n\n case 3:\n case \"end\":\n return _context15.stop();\n }\n }, _callee15, this);\n }));\n }\n /**\r\n * Delete a list of tasks.\r\n *\r\n * @param parameters - Parameters to filter the tasks.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n }, {\n key: \"deleteTasks\",\n value: function deleteTasks() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee16() {\n return _regeneratorRuntime().wrap(function _callee16$(_context16) {\n while (1) switch (_context16.prev = _context16.next) {\n case 0:\n _context16.next = 2;\n return this.tasks.deleteTasks(parameters);\n\n case 2:\n return _context16.abrupt(\"return\", _context16.sent);\n\n case 3:\n case \"end\":\n return _context16.stop();\n }\n }, _callee16, this);\n }));\n } ///\n /// KEYS\n ///\n\n /**\r\n * Get all API keys\r\n *\r\n * @param parameters - Parameters to browse the indexes\r\n * @returns Promise returning an object with keys\r\n */\n\n }, {\n key: \"getKeys\",\n value: function getKeys() {\n var parameters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee17() {\n var url, keys;\n return _regeneratorRuntime().wrap(function _callee17$(_context17) {\n while (1) switch (_context17.prev = _context17.next) {\n case 0:\n url = \"keys\";\n _context17.next = 3;\n return this.httpRequest.get(url, parameters);\n\n case 3:\n keys = _context17.sent;\n keys.results = keys.results.map(function (key) {\n return Object.assign(Object.assign({}, key), {\n createdAt: new Date(key.createdAt),\n updatedAt: new Date(key.updatedAt)\n });\n });\n return _context17.abrupt(\"return\", keys);\n\n case 6:\n case \"end\":\n return _context17.stop();\n }\n }, _callee17, this);\n }));\n }\n /**\r\n * Get one API key\r\n *\r\n * @param keyOrUid - Key or uid of the API key\r\n * @returns Promise returning a key\r\n */\n\n }, {\n key: \"getKey\",\n value: function getKey(keyOrUid) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee18() {\n var url;\n return _regeneratorRuntime().wrap(function _callee18$(_context18) {\n while (1) switch (_context18.prev = _context18.next) {\n case 0:\n url = \"keys/\".concat(keyOrUid);\n _context18.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context18.abrupt(\"return\", _context18.sent);\n\n case 4:\n case \"end\":\n return _context18.stop();\n }\n }, _callee18, this);\n }));\n }\n /**\r\n * Create one API key\r\n *\r\n * @param options - Key options\r\n * @returns Promise returning a key\r\n */\n\n }, {\n key: \"createKey\",\n value: function createKey(options) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee19() {\n var url;\n return _regeneratorRuntime().wrap(function _callee19$(_context19) {\n while (1) switch (_context19.prev = _context19.next) {\n case 0:\n url = \"keys\";\n _context19.next = 3;\n return this.httpRequest.post(url, options);\n\n case 3:\n return _context19.abrupt(\"return\", _context19.sent);\n\n case 4:\n case \"end\":\n return _context19.stop();\n }\n }, _callee19, this);\n }));\n }\n /**\r\n * Update one API key\r\n *\r\n * @param keyOrUid - Key\r\n * @param options - Key options\r\n * @returns Promise returning a key\r\n */\n\n }, {\n key: \"updateKey\",\n value: function updateKey(keyOrUid, options) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee20() {\n var url;\n return _regeneratorRuntime().wrap(function _callee20$(_context20) {\n while (1) switch (_context20.prev = _context20.next) {\n case 0:\n url = \"keys/\".concat(keyOrUid);\n _context20.next = 3;\n return this.httpRequest.patch(url, options);\n\n case 3:\n return _context20.abrupt(\"return\", _context20.sent);\n\n case 4:\n case \"end\":\n return _context20.stop();\n }\n }, _callee20, this);\n }));\n }\n /**\r\n * Delete one API key\r\n *\r\n * @param keyOrUid - Key\r\n * @returns\r\n */\n\n }, {\n key: \"deleteKey\",\n value: function deleteKey(keyOrUid) {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee21() {\n var url;\n return _regeneratorRuntime().wrap(function _callee21$(_context21) {\n while (1) switch (_context21.prev = _context21.next) {\n case 0:\n url = \"keys/\".concat(keyOrUid);\n _context21.next = 3;\n return this.httpRequest.delete(url);\n\n case 3:\n return _context21.abrupt(\"return\", _context21.sent);\n\n case 4:\n case \"end\":\n return _context21.stop();\n }\n }, _callee21, this);\n }));\n } ///\n /// HEALTH\n ///\n\n /**\r\n * Checks if the server is healthy, otherwise an error will be thrown.\r\n *\r\n * @returns Promise returning an object with health details\r\n */\n\n }, {\n key: \"health\",\n value: function health() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee22() {\n var url;\n return _regeneratorRuntime().wrap(function _callee22$(_context22) {\n while (1) switch (_context22.prev = _context22.next) {\n case 0:\n url = \"health\";\n _context22.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context22.abrupt(\"return\", _context22.sent);\n\n case 4:\n case \"end\":\n return _context22.stop();\n }\n }, _callee22, this);\n }));\n }\n /**\r\n * Checks if the server is healthy, return true or false.\r\n *\r\n * @returns Promise returning a boolean\r\n */\n\n }, {\n key: \"isHealthy\",\n value: function isHealthy() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee23() {\n var url;\n return _regeneratorRuntime().wrap(function _callee23$(_context23) {\n while (1) switch (_context23.prev = _context23.next) {\n case 0:\n _context23.prev = 0;\n url = \"health\";\n _context23.next = 4;\n return this.httpRequest.get(url);\n\n case 4:\n return _context23.abrupt(\"return\", true);\n\n case 7:\n _context23.prev = 7;\n _context23.t0 = _context23[\"catch\"](0);\n return _context23.abrupt(\"return\", false);\n\n case 10:\n case \"end\":\n return _context23.stop();\n }\n }, _callee23, this, [[0, 7]]);\n }));\n } ///\n /// STATS\n ///\n\n /**\r\n * Get the stats of all the database\r\n *\r\n * @returns Promise returning object of all the stats\r\n */\n\n }, {\n key: \"getStats\",\n value: function getStats() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee24() {\n var url;\n return _regeneratorRuntime().wrap(function _callee24$(_context24) {\n while (1) switch (_context24.prev = _context24.next) {\n case 0:\n url = \"stats\";\n _context24.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context24.abrupt(\"return\", _context24.sent);\n\n case 4:\n case \"end\":\n return _context24.stop();\n }\n }, _callee24, this);\n }));\n } ///\n /// VERSION\n ///\n\n /**\r\n * Get the version of MeiliSearch\r\n *\r\n * @returns Promise returning object with version details\r\n */\n\n }, {\n key: \"getVersion\",\n value: function getVersion() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee25() {\n var url;\n return _regeneratorRuntime().wrap(function _callee25$(_context25) {\n while (1) switch (_context25.prev = _context25.next) {\n case 0:\n url = \"version\";\n _context25.next = 3;\n return this.httpRequest.get(url);\n\n case 3:\n return _context25.abrupt(\"return\", _context25.sent);\n\n case 4:\n case \"end\":\n return _context25.stop();\n }\n }, _callee25, this);\n }));\n } ///\n /// DUMPS\n ///\n\n /**\r\n * Creates a dump\r\n *\r\n * @returns Promise returning object of the enqueued task\r\n */\n\n }, {\n key: \"createDump\",\n value: function createDump() {\n return __awaiter(this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee26() {\n var url, task;\n return _regeneratorRuntime().wrap(function _callee26$(_context26) {\n while (1) switch (_context26.prev = _context26.next) {\n case 0:\n url = \"dumps\";\n _context26.next = 3;\n return this.httpRequest.post(url);\n\n case 3:\n task = _context26.sent;\n return _context26.abrupt(\"return\", new EnqueuedTask(task));\n\n case 5:\n case \"end\":\n return _context26.stop();\n }\n }, _callee26, this);\n }));\n } ///\n /// TOKENS\n ///\n\n /**\r\n * Generate a tenant token\r\n *\r\n * @param apiKeyUid - The uid of the api key used as issuer of the token.\r\n * @param searchRules - Search rules that are applied to every search.\r\n * @param options - Token options to customize some aspect of the token.\r\n * @returns The token in JWT format.\r\n */\n\n }, {\n key: \"generateTenantToken\",\n value: function generateTenantToken(_apiKeyUid, _searchRules, _options) {\n var error = new Error();\n throw new Error(\"Meilisearch: failed to generate a tenant token. Generation of a token only works in a node environment \\n \".concat(error.stack, \".\"));\n }\n }]);\n\n return Client;\n }();\n\n var MeiliSearch = /*#__PURE__*/function (_Client) {\n _inherits(MeiliSearch, _Client);\n\n var _super = _createSuper(MeiliSearch);\n\n function MeiliSearch(config) {\n _classCallCheck(this, MeiliSearch);\n\n return _super.call(this, config);\n }\n\n return _createClass(MeiliSearch);\n }(Client);\n\n exports.ContentTypeEnum = ContentTypeEnum;\n exports.Index = Index;\n exports.MatchingStrategies = MatchingStrategies;\n exports.MeiliSearch = MeiliSearch;\n exports.MeiliSearchApiError = MeiliSearchApiError;\n exports.MeiliSearchCommunicationError = MeiliSearchCommunicationError;\n exports.MeiliSearchError = MeiliSearchError;\n exports.MeiliSearchTimeOutError = MeiliSearchTimeOutError;\n exports[\"default\"] = MeiliSearch;\n exports.httpErrorHandler = httpErrorHandler;\n exports.httpResponseErrorHandler = httpResponseErrorHandler;\n exports.versionErrorHintMessage = versionErrorHintMessage;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n}));\n"],"names":["exports","MatchingStrategies","ALL","LAST","ContentTypeEnum","JSON","CSV","NDJSON","_regeneratorRuntime","Op","Object","prototype","hasOwn","hasOwnProperty","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","obj","key","value","defineProperty","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","_invoke","state","method","arg","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","record","tryCatch","type","done","fn","call","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","this","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","AsyncIterator","PromiseImpl","invoke","resolve","reject","result","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","undefined","return","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","_typeof","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_createClass","protoProps","staticProps","_defineProperty","_inherits","subClass","superClass","_setPrototypeOf","_getPrototypeOf","o","bind","p","_isNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","e","_construct","Parent","args","Class","a","apply","Function","arguments","_isNativeFunction","toString","indexOf","_wrapNativeSuper","_cache","Map","has","get","set","Wrapper","_assertThisInitialized","ReferenceError","_possibleConstructorReturn","_createSuper","Derived","hasNativeReflectConstruct","Super","NewTarget","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","Array","isArray","_i","_s","_e","_arr","_n","_d","minLen","_arrayLikeToArray","n","from","test","len","arr2","_createForOfIteratorHelper","allowArrayLike","it","F","s","f","normalCompletion","didErr","step","__awaiter","thisArg","_arguments","P","adopt","fulfilled","rejected","MeiliSearchCommunicationError","_Error","_super","message","body","url","stack","_this","_a","_b","_c","Response","statusText","statusCode","status","errno","code","replace","concat","captureStackTrace","MeiliSearchApiError","link","httpStatus","httpResponseErrorHandler","response","_callee","responseBody","_context","ok","json","t0","httpErrorHandler","MeiliSearchError","MeiliSearchTimeOutError","versionErrorHintMessage","removeUndefinedFromObject","entries","reduce","acc","curEntry","_curEntry","val","sleep","ms","setTimeout","addProtocolIfNotPresent","host","startsWith","addTrailingSlash","endsWith","PACKAGE_VERSION","toQueryParams","parameters","assign","join","Date","toISOString","constructHostURL","cloneAndParseHeaders","headers","headerPair","clonedHeaders","createHeaders","config","agentHeader","packageAgent","contentType","authorization","requestConfig","apiKey","clientAgents","clients","HttpRequests","httpClient","URL","_ref","params","_ref$config","constructURL","queryParams","fetchFn","parsedBody","URLSearchParams","filter","x","map","search","stringify","fetch","res","_callee2","_context2","request","data","_callee3","_context3","_callee4","_context4","_callee5","_context5","_callee6","_context6","EnqueuedTask","task","taskUid","indexUid","enqueuedAt","Task","uid","details","canceledBy","duration","startedAt","finishedAt","TaskClient","httpRequest","taskItem","tasks","results","_ref$timeOutMs","timeOutMs","_ref$intervalMs","intervalMs","startingTime","now","getTask","includes","taskUids","_ref2","_ref2$timeOutMs","_ref2$intervalMs","_iterator","_step","waitForTask","post","delete","Index","primaryKey","query","options","q","_f","_g","parseFilter","getParams","sort","facets","attributesToRetrieve","attributesToCrop","attributesToHighlight","vector","attributesToSearchOn","updatedAt","createdAt","getRawInfo","_callee7","_context7","patch","_callee8","_context8","_callee9","_context9","getTasks","indexUids","_callee10","_context10","_callee11","_context11","waitForTasks","_callee12","_context12","_callee13","_context13","_callee14","_url","fields","_context14","documentId","_callee15","_context15","documents","_callee16","_context16","_callee17","_context17","batchSize","_callee18","updates","_context18","addDocuments","t1","_callee19","_context19","put","_callee20","_context20","updateDocuments","_callee21","_context21","_callee22","_context22","_callee23","isDocumentsDeletionQuery","endpoint","_context23","_callee24","_context24","_callee25","_context25","settings","_callee26","_context26","enqueued","_callee27","_context27","_callee28","_context28","pagination","_callee29","_context29","_callee30","_context30","_callee31","_context31","synonyms","_callee32","_context32","_callee33","_context33","_callee34","_context34","stopWords","_callee35","_context35","_callee36","_context36","_callee37","_context37","rankingRules","_callee38","_context38","_callee39","_context39","_callee40","_context40","distinctAttribute","_callee41","_context41","_callee42","_context42","_callee43","_context43","filterableAttributes","_callee44","_context44","_callee45","_context45","_callee46","_context46","sortableAttributes","_callee47","_context47","_callee48","_context48","_callee49","_context49","searchableAttributes","_callee50","_context50","_callee51","_context51","_callee52","_context52","displayedAttributes","_callee53","_context53","_callee54","_context54","_callee55","_context55","typoTolerance","_callee56","_context56","_callee57","_context57","_callee58","_context58","faceting","_callee59","_context59","_callee60","_context60","_callee61","_context61","separatorTokens","_callee62","_context62","_callee63","_context63","_callee64","_context64","nonSeparatorTokens","_callee65","_context65","_callee66","_context66","_callee67","_context67","dictionary","_callee68","_context68","_callee69","_context69","_callee70","req","_context70","Client","fetchInfo","rawIndexes","indexes","getRawIndexes","index","update","deleteIndex","queries","cancelTasks","deleteTasks","keyOrUid","_apiKeyUid","_searchRules","_options","MeiliSearch","_Client","factory"],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"instant-meilisearch.umd.min.js","sources":["../../../node_modules/meilisearch/dist/bundles/meilisearch.umd.js"],"sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('cross-fetch/polyfill')) :\n typeof define === 'function' && define.amd ? define(['exports', 'cross-fetch/polyfill'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.window = global.window || {}));\n})(this, (function (exports) { 'use strict';\n\n // Type definitions for meilisearch\n // Project: https://github.com/meilisearch/meilisearch-js\n // Definitions by: qdequele <quentin@meilisearch.com> <https://github.com/meilisearch>\n // Definitions: https://github.com/meilisearch/meilisearch-js\n // TypeScript Version: ^3.8.3\n\n /*\r\n * SEARCH PARAMETERS\r\n */\n var MatchingStrategies = {\n ALL: 'all',\n LAST: 'last'\n };\n\n /******************************************************************************\r\n Copyright (c) Microsoft Corporation.\r\n\r\n Permission to use, copy, modify, and/or distribute this software for any\r\n purpose with or without fee is hereby granted.\r\n\r\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\n PERFORMANCE OF THIS SOFTWARE.\r\n ***************************************************************************** */\r\n /* global Reflect, Promise */\r\n\r\n var extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n\r\n function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n }\r\n\r\n var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n };\r\n\r\n function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n }\r\n\r\n function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n }\n\n var MeiliSearchCommunicationError =\n /** @class */\n function (_super) {\n __extends(MeiliSearchCommunicationError, _super);\n\n function MeiliSearchCommunicationError(message, body, url, stack) {\n var _this = this;\n\n var _a, _b, _c;\n\n _this = _super.call(this, message) || this; // Make errors comparison possible. ex: error instanceof MeiliSearchCommunicationError.\n\n Object.setPrototypeOf(_this, MeiliSearchCommunicationError.prototype);\n _this.name = 'MeiliSearchCommunicationError';\n\n if (body instanceof Response) {\n _this.message = body.statusText;\n _this.statusCode = body.status;\n }\n\n if (body instanceof Error) {\n _this.errno = body.errno;\n _this.code = body.code;\n }\n\n if (stack) {\n _this.stack = stack;\n _this.stack = (_a = _this.stack) === null || _a === void 0 ? void 0 : _a.replace(/(TypeError|FetchError)/, _this.name);\n _this.stack = (_b = _this.stack) === null || _b === void 0 ? void 0 : _b.replace('Failed to fetch', \"request to \".concat(url, \" failed, reason: connect ECONNREFUSED\"));\n _this.stack = (_c = _this.stack) === null || _c === void 0 ? void 0 : _c.replace('Not Found', \"Not Found: \".concat(url));\n } else {\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_this, MeiliSearchCommunicationError);\n }\n }\n\n return _this;\n }\n\n return MeiliSearchCommunicationError;\n }(Error);\n\n var MeiliSearchApiError =\n /** @class */\n function (_super) {\n __extends(class_1, _super);\n\n function class_1(error, status) {\n var _this = _super.call(this, error.message) || this; // Make errors comparison possible. ex: error instanceof MeiliSearchApiError.\n\n\n Object.setPrototypeOf(_this, MeiliSearchApiError.prototype);\n _this.name = 'MeiliSearchApiError';\n _this.code = error.code;\n _this.type = error.type;\n _this.link = error.link;\n _this.message = error.message;\n _this.httpStatus = status;\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_this, MeiliSearchApiError);\n }\n\n return _this;\n }\n\n return class_1;\n }(Error);\n\n function httpResponseErrorHandler(response) {\n return __awaiter(this, void 0, void 0, function () {\n var responseBody;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!!response.ok) return [3\n /*break*/\n , 5];\n responseBody = void 0;\n _a.label = 1;\n\n case 1:\n _a.trys.push([1, 3,, 4]);\n\n return [4\n /*yield*/\n , response.json()];\n\n case 2:\n // If it is not possible to parse the return body it means there is none\n // In which case it is a communication error with the Meilisearch instance\n responseBody = _a.sent();\n return [3\n /*break*/\n , 4];\n\n case 3:\n _a.sent(); // Not sure on how to test this part of the code.\n\n throw new MeiliSearchCommunicationError(response.statusText, response, response.url);\n\n case 4:\n // If the body is parsable, then it means Meilisearch returned a body with\n // information on the error.\n throw new MeiliSearchApiError(responseBody, response.status);\n\n case 5:\n return [2\n /*return*/\n , response];\n }\n });\n });\n }\n\n function httpErrorHandler(response, stack, url) {\n if (response.name !== 'MeiliSearchApiError') {\n throw new MeiliSearchCommunicationError(response.message, response, url, stack);\n }\n\n throw response;\n }\n\n var MeiliSearchError =\n /** @class */\n function (_super) {\n __extends(MeiliSearchError, _super);\n\n function MeiliSearchError(message) {\n var _this = _super.call(this, message) || this; // Make errors comparison possible. ex: error instanceof MeiliSearchError.\n\n\n Object.setPrototypeOf(_this, MeiliSearchError.prototype);\n _this.name = 'MeiliSearchError';\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_this, MeiliSearchError);\n }\n\n return _this;\n }\n\n return MeiliSearchError;\n }(Error);\n\n var MeiliSearchTimeOutError =\n /** @class */\n function (_super) {\n __extends(MeiliSearchTimeOutError, _super);\n\n function MeiliSearchTimeOutError(message) {\n var _this = _super.call(this, message) || this; // Make errors comparison possible. ex: error instanceof MeiliSearchTimeOutError.\n\n\n Object.setPrototypeOf(_this, MeiliSearchTimeOutError.prototype);\n _this.name = 'MeiliSearchTimeOutError';\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_this, MeiliSearchTimeOutError);\n }\n\n return _this;\n }\n\n return MeiliSearchTimeOutError;\n }(Error);\n\n /** Removes undefined entries from object */\n\n function removeUndefinedFromObject(obj) {\n return Object.entries(obj).reduce(function (acc, curEntry) {\n var key = curEntry[0],\n val = curEntry[1];\n if (val !== undefined) acc[key] = val;\n return acc;\n }, {});\n }\n\n function sleep(ms) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , new Promise(function (resolve) {\n return setTimeout(resolve, ms);\n })];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n }\n\n function addProtocolIfNotPresent(host) {\n if (!(host.startsWith('https://') || host.startsWith('http://'))) {\n return \"http://\".concat(host);\n }\n\n return host;\n }\n\n function addTrailingSlash(url) {\n if (!url.endsWith('/')) {\n url += '/';\n }\n\n return url;\n }\n\n var PACKAGE_VERSION = '0.32.1';\n\n function toQueryParams(parameters) {\n var params = Object.keys(parameters);\n var queryParams = params.reduce(function (acc, key) {\n var _a, _b, _c;\n\n var value = parameters[key];\n\n if (value === undefined) {\n return acc;\n } else if (Array.isArray(value)) {\n return __assign(__assign({}, acc), (_a = {}, _a[key] = value.join(','), _a));\n } else if (value instanceof Date) {\n return __assign(__assign({}, acc), (_b = {}, _b[key] = value.toISOString(), _b));\n }\n\n return __assign(__assign({}, acc), (_c = {}, _c[key] = value, _c));\n }, {});\n return queryParams;\n }\n\n function constructHostURL(host) {\n try {\n host = addProtocolIfNotPresent(host);\n host = addTrailingSlash(host);\n return host;\n } catch (e) {\n throw new MeiliSearchError('The provided host is not valid.');\n }\n }\n\n function cloneAndParseHeaders(headers) {\n if (Array.isArray(headers)) {\n return headers.reduce(function (acc, headerPair) {\n acc[headerPair[0]] = headerPair[1];\n return acc;\n }, {});\n } else if ('has' in headers) {\n var clonedHeaders_1 = {};\n headers.forEach(function (value, key) {\n return clonedHeaders_1[key] = value;\n });\n return clonedHeaders_1;\n } else {\n return Object.assign({}, headers);\n }\n }\n\n function createHeaders(config) {\n var _a, _b;\n\n var agentHeader = 'X-Meilisearch-Client';\n var packageAgent = \"Meilisearch JavaScript (v\".concat(PACKAGE_VERSION, \")\");\n var contentType = 'Content-Type';\n var authorization = 'Authorization';\n var headers = cloneAndParseHeaders((_b = (_a = config.requestConfig) === null || _a === void 0 ? void 0 : _a.headers) !== null && _b !== void 0 ? _b : {}); // do not override if user provided the header\n\n if (config.apiKey && !headers[authorization]) {\n headers[authorization] = \"Bearer \".concat(config.apiKey);\n }\n\n if (!headers[contentType]) {\n headers['Content-Type'] = 'application/json';\n } // Creates the custom user agent with information on the package used.\n\n\n if (config.clientAgents && Array.isArray(config.clientAgents)) {\n var clients = config.clientAgents.concat(packageAgent);\n headers[agentHeader] = clients.join(' ; ');\n } else if (config.clientAgents && !Array.isArray(config.clientAgents)) {\n // If the header is defined but not an array\n throw new MeiliSearchError(\"Meilisearch: The header \\\"\".concat(agentHeader, \"\\\" should be an array of string(s).\\n\"));\n } else {\n headers[agentHeader] = packageAgent;\n }\n\n return headers;\n }\n\n var HttpRequests =\n /** @class */\n function () {\n function HttpRequests(config) {\n this.headers = createHeaders(config);\n this.requestConfig = config.requestConfig;\n this.httpClient = config.httpClient;\n\n try {\n var host = constructHostURL(config.host);\n this.url = new URL(host);\n } catch (e) {\n throw new MeiliSearchError('The provided host is not valid.');\n }\n }\n\n HttpRequests.prototype.request = function (_a) {\n var method = _a.method,\n url = _a.url,\n params = _a.params,\n body = _a.body,\n config = _a.config;\n return __awaiter(this, void 0, void 0, function () {\n var constructURL, queryParams_1, fetchFn, result, response, parsedBody, e_1, stack;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n constructURL = new URL(url, this.url);\n\n if (params) {\n queryParams_1 = new URLSearchParams();\n Object.keys(params).filter(function (x) {\n return params[x] !== null;\n }).map(function (x) {\n return queryParams_1.set(x, params[x]);\n });\n constructURL.search = queryParams_1.toString();\n }\n\n _b.label = 1;\n\n case 1:\n _b.trys.push([1, 6,, 7]);\n\n fetchFn = this.httpClient ? this.httpClient : fetch;\n result = fetchFn(constructURL.toString(), __assign(__assign(__assign({}, config), this.requestConfig), {\n method: method,\n body: JSON.stringify(body),\n headers: this.headers\n }));\n if (!this.httpClient) return [3\n /*break*/\n , 3];\n return [4\n /*yield*/\n , result];\n\n case 2:\n return [2\n /*return*/\n , _b.sent()];\n\n case 3:\n return [4\n /*yield*/\n , result.then(function (res) {\n return httpResponseErrorHandler(res);\n })];\n\n case 4:\n response = _b.sent();\n return [4\n /*yield*/\n , response.json()[\"catch\"](function () {\n return undefined;\n })];\n\n case 5:\n parsedBody = _b.sent();\n return [2\n /*return*/\n , parsedBody];\n\n case 6:\n e_1 = _b.sent();\n stack = e_1.stack;\n httpErrorHandler(e_1, stack, constructURL.toString());\n return [3\n /*break*/\n , 7];\n\n case 7:\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n\n HttpRequests.prototype.get = function (url, params, config) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.request({\n method: 'GET',\n url: url,\n params: params,\n config: config\n })];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n\n HttpRequests.prototype.post = function (url, data, params, config) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.request({\n method: 'POST',\n url: url,\n body: data,\n params: params,\n config: config\n })];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n\n HttpRequests.prototype.put = function (url, data, params, config) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.request({\n method: 'PUT',\n url: url,\n body: data,\n params: params,\n config: config\n })];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n\n HttpRequests.prototype.patch = function (url, data, params, config) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.request({\n method: 'PATCH',\n url: url,\n body: data,\n params: params,\n config: config\n })];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n\n HttpRequests.prototype[\"delete\"] = function (url, data, params, config) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.request({\n method: 'DELETE',\n url: url,\n body: data,\n params: params,\n config: config\n })];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n\n return HttpRequests;\n }();\n\n var EnqueuedTask =\n /** @class */\n function () {\n function EnqueuedTask(task) {\n this.taskUid = task.taskUid;\n this.indexUid = task.indexUid;\n this.status = task.status;\n this.type = task.type;\n this.enqueuedAt = new Date(task.enqueuedAt);\n }\n\n return EnqueuedTask;\n }();\n\n var Task =\n /** @class */\n function () {\n function Task(task) {\n this.indexUid = task.indexUid;\n this.status = task.status;\n this.type = task.type;\n this.uid = task.uid;\n this.details = task.details;\n this.canceledBy = task.canceledBy;\n this.error = task.error;\n this.duration = task.duration;\n this.startedAt = new Date(task.startedAt);\n this.enqueuedAt = new Date(task.enqueuedAt);\n this.finishedAt = new Date(task.finishedAt);\n }\n\n return Task;\n }();\n\n var TaskClient =\n /** @class */\n function () {\n function TaskClient(config) {\n this.httpRequest = new HttpRequests(config);\n }\n /**\r\n * Get one task\r\n *\r\n * @param uid - Unique identifier of the task\r\n * @returns\r\n */\n\n\n TaskClient.prototype.getTask = function (uid) {\n return __awaiter(this, void 0, void 0, function () {\n var url, taskItem;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"tasks/\".concat(uid);\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n taskItem = _a.sent();\n return [2\n /*return*/\n , new Task(taskItem)];\n }\n });\n });\n };\n /**\r\n * Get tasks\r\n *\r\n * @param parameters - Parameters to browse the tasks\r\n * @returns Promise containing all tasks\r\n */\n\n\n TaskClient.prototype.getTasks = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var url, tasks;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"tasks\";\n return [4\n /*yield*/\n , this.httpRequest.get(url, toQueryParams(parameters))];\n\n case 1:\n tasks = _a.sent();\n return [2\n /*return*/\n , __assign(__assign({}, tasks), {\n results: tasks.results.map(function (task) {\n return new Task(task);\n })\n })];\n }\n });\n });\n };\n /**\r\n * Wait for a task to be processed.\r\n *\r\n * @param taskUid - Task identifier\r\n * @param options - Additional configuration options\r\n * @returns Promise returning a task after it has been processed\r\n */\n\n\n TaskClient.prototype.waitForTask = function (taskUid, _a) {\n var _b = _a === void 0 ? {} : _a,\n _c = _b.timeOutMs,\n timeOutMs = _c === void 0 ? 5000 : _c,\n _d = _b.intervalMs,\n intervalMs = _d === void 0 ? 50 : _d;\n\n return __awaiter(this, void 0, void 0, function () {\n var startingTime, response;\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n startingTime = Date.now();\n _e.label = 1;\n\n case 1:\n if (!(Date.now() - startingTime < timeOutMs)) return [3\n /*break*/\n , 4];\n return [4\n /*yield*/\n , this.getTask(taskUid)];\n\n case 2:\n response = _e.sent();\n if (![\"enqueued\"\n /* TaskStatus.TASK_ENQUEUED */\n , \"processing\"\n /* TaskStatus.TASK_PROCESSING */\n ].includes(response.status)) return [2\n /*return*/\n , response];\n return [4\n /*yield*/\n , sleep(intervalMs)];\n\n case 3:\n _e.sent();\n\n return [3\n /*break*/\n , 1];\n\n case 4:\n throw new MeiliSearchTimeOutError(\"timeout of \".concat(timeOutMs, \"ms has exceeded on process \").concat(taskUid, \" when waiting a task to be resolved.\"));\n }\n });\n });\n };\n /**\r\n * Waits for multiple tasks to be processed\r\n *\r\n * @param taskUids - Tasks identifier list\r\n * @param options - Wait options\r\n * @returns Promise returning a list of tasks after they have been processed\r\n */\n\n\n TaskClient.prototype.waitForTasks = function (taskUids, _a) {\n var _b = _a === void 0 ? {} : _a,\n _c = _b.timeOutMs,\n timeOutMs = _c === void 0 ? 5000 : _c,\n _d = _b.intervalMs,\n intervalMs = _d === void 0 ? 50 : _d;\n\n return __awaiter(this, void 0, void 0, function () {\n var tasks, _i, taskUids_1, taskUid, task;\n\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n tasks = [];\n _i = 0, taskUids_1 = taskUids;\n _e.label = 1;\n\n case 1:\n if (!(_i < taskUids_1.length)) return [3\n /*break*/\n , 4];\n taskUid = taskUids_1[_i];\n return [4\n /*yield*/\n , this.waitForTask(taskUid, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n })];\n\n case 2:\n task = _e.sent();\n tasks.push(task);\n _e.label = 3;\n\n case 3:\n _i++;\n return [3\n /*break*/\n , 1];\n\n case 4:\n return [2\n /*return*/\n , tasks];\n }\n });\n });\n };\n /**\r\n * Cancel a list of enqueued or processing tasks.\r\n *\r\n * @param parameters - Parameters to filter the tasks.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n TaskClient.prototype.cancelTasks = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"tasks/cancel\";\n return [4\n /*yield*/\n , this.httpRequest.post(url, {}, toQueryParams(parameters))];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Delete a list tasks.\r\n *\r\n * @param parameters - Parameters to filter the tasks.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n TaskClient.prototype.deleteTasks = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"tasks\";\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url, {}, toQueryParams(parameters))];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n\n return TaskClient;\n }();\n\n /*\r\n * Bundle: MeiliSearch / Indexes\r\n * Project: MeiliSearch - Javascript API\r\n * Author: Quentin de Quelen <quentin@meilisearch.com>\r\n * Copyright: 2019, MeiliSearch\r\n */\n\n var Index =\n /** @class */\n function () {\n /**\r\n * @param config - Request configuration options\r\n * @param uid - UID of the index\r\n * @param primaryKey - Primary Key of the index\r\n */\n function Index(config, uid, primaryKey) {\n this.uid = uid;\n this.primaryKey = primaryKey;\n this.httpRequest = new HttpRequests(config);\n this.tasks = new TaskClient(config);\n } ///\n /// SEARCH\n ///\n\n /**\r\n * Search for documents into an index\r\n *\r\n * @param query - Query string\r\n * @param options - Search options\r\n * @param config - Additional request configuration options\r\n * @returns Promise containing the search response\r\n */\n\n\n Index.prototype.search = function (query, options, config) {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/search\");\n return [4\n /*yield*/\n , this.httpRequest.post(url, removeUndefinedFromObject(__assign({\n q: query\n }, options)), undefined, config)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Search for documents into an index using the GET method\r\n *\r\n * @param query - Query string\r\n * @param options - Search options\r\n * @param config - Additional request configuration options\r\n * @returns Promise containing the search response\r\n */\n\n\n Index.prototype.searchGet = function (query, options, config) {\n var _a, _b, _c, _d, _e;\n\n return __awaiter(this, void 0, void 0, function () {\n var url, parseFilter, getParams;\n return __generator(this, function (_f) {\n switch (_f.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/search\");\n\n parseFilter = function parseFilter(filter) {\n if (typeof filter === 'string') return filter;else if (Array.isArray(filter)) throw new MeiliSearchError('The filter query parameter should be in string format when using searchGet');else return undefined;\n };\n\n getParams = __assign(__assign({\n q: query\n }, options), {\n filter: parseFilter(options === null || options === void 0 ? void 0 : options.filter),\n sort: (_a = options === null || options === void 0 ? void 0 : options.sort) === null || _a === void 0 ? void 0 : _a.join(','),\n facets: (_b = options === null || options === void 0 ? void 0 : options.facets) === null || _b === void 0 ? void 0 : _b.join(','),\n attributesToRetrieve: (_c = options === null || options === void 0 ? void 0 : options.attributesToRetrieve) === null || _c === void 0 ? void 0 : _c.join(','),\n attributesToCrop: (_d = options === null || options === void 0 ? void 0 : options.attributesToCrop) === null || _d === void 0 ? void 0 : _d.join(','),\n attributesToHighlight: (_e = options === null || options === void 0 ? void 0 : options.attributesToHighlight) === null || _e === void 0 ? void 0 : _e.join(',')\n });\n return [4\n /*yield*/\n , this.httpRequest.get(url, removeUndefinedFromObject(getParams), config)];\n\n case 1:\n return [2\n /*return*/\n , _f.sent()];\n }\n });\n });\n }; ///\n /// INDEX\n ///\n\n /**\r\n * Get index information.\r\n *\r\n * @returns Promise containing index information\r\n */\n\n\n Index.prototype.getRawInfo = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, res;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid);\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n res = _a.sent();\n this.primaryKey = res.primaryKey;\n this.updatedAt = new Date(res.updatedAt);\n this.createdAt = new Date(res.createdAt);\n return [2\n /*return*/\n , res];\n }\n });\n });\n };\n /**\r\n * Fetch and update Index information.\r\n *\r\n * @returns Promise to the current Index object with updated information\r\n */\n\n\n Index.prototype.fetchInfo = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.getRawInfo()];\n\n case 1:\n _a.sent();\n\n return [2\n /*return*/\n , this];\n }\n });\n });\n };\n /**\r\n * Get Primary Key.\r\n *\r\n * @returns Promise containing the Primary Key of the index\r\n */\n\n\n Index.prototype.fetchPrimaryKey = function () {\n return __awaiter(this, void 0, void 0, function () {\n var _a;\n\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _a = this;\n return [4\n /*yield*/\n , this.getRawInfo()];\n\n case 1:\n _a.primaryKey = _b.sent().primaryKey;\n return [2\n /*return*/\n , this.primaryKey];\n }\n });\n });\n };\n /**\r\n * Create an index.\r\n *\r\n * @param uid - Unique identifier of the Index\r\n * @param options - Index options\r\n * @param config - Request configuration options\r\n * @returns Newly created Index object\r\n */\n\n\n Index.create = function (uid, options, config) {\n if (options === void 0) {\n options = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var url, req, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes\";\n req = new HttpRequests(config);\n return [4\n /*yield*/\n , req.post(url, __assign(__assign({}, options), {\n uid: uid\n }))];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Update an index.\r\n *\r\n * @param data - Data to update\r\n * @returns Promise to the current Index object with updated information\r\n */\n\n\n Index.prototype.update = function (data) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid);\n return [4\n /*yield*/\n , this.httpRequest.patch(url, data)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n };\n /**\r\n * Delete an index.\r\n *\r\n * @returns Promise which resolves when index is deleted successfully\r\n */\n\n\n Index.prototype[\"delete\"] = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid);\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n }; ///\n /// TASKS\n ///\n\n /**\r\n * Get the list of all the tasks of the index.\r\n *\r\n * @param parameters - Parameters to browse the tasks\r\n * @returns Promise containing all tasks\r\n */\n\n\n Index.prototype.getTasks = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.getTasks(__assign(__assign({}, parameters), {\n indexUids: [this.uid]\n }))];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Get one task of the index.\r\n *\r\n * @param taskUid - Task identifier\r\n * @returns Promise containing a task\r\n */\n\n\n Index.prototype.getTask = function (taskUid) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.getTask(taskUid)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Wait for multiple tasks to be processed.\r\n *\r\n * @param taskUids - Tasks identifier\r\n * @param waitOptions - Options on timeout and interval\r\n * @returns Promise containing an array of tasks\r\n */\n\n\n Index.prototype.waitForTasks = function (taskUids, _a) {\n var _b = _a === void 0 ? {} : _a,\n _c = _b.timeOutMs,\n timeOutMs = _c === void 0 ? 5000 : _c,\n _d = _b.intervalMs,\n intervalMs = _d === void 0 ? 50 : _d;\n\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.waitForTasks(taskUids, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n })];\n\n case 1:\n return [2\n /*return*/\n , _e.sent()];\n }\n });\n });\n };\n /**\r\n * Wait for a task to be processed.\r\n *\r\n * @param taskUid - Task identifier\r\n * @param waitOptions - Options on timeout and interval\r\n * @returns Promise containing an array of tasks\r\n */\n\n\n Index.prototype.waitForTask = function (taskUid, _a) {\n var _b = _a === void 0 ? {} : _a,\n _c = _b.timeOutMs,\n timeOutMs = _c === void 0 ? 5000 : _c,\n _d = _b.intervalMs,\n intervalMs = _d === void 0 ? 50 : _d;\n\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.waitForTask(taskUid, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n })];\n\n case 1:\n return [2\n /*return*/\n , _e.sent()];\n }\n });\n });\n }; ///\n /// STATS\n ///\n\n /**\r\n * Get stats of an index\r\n *\r\n * @returns Promise containing object with stats of the index\r\n */\n\n\n Index.prototype.getStats = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/stats\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n }; ///\n /// DOCUMENTS\n ///\n\n /**\r\n * Get documents of an index\r\n *\r\n * @param parameters - Parameters to browse the documents\r\n * @returns Promise containing Document responses\r\n */\n\n\n Index.prototype.getDocuments = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var url, fields;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents\");\n\n fields = function () {\n var _a;\n\n if (Array.isArray(parameters === null || parameters === void 0 ? void 0 : parameters.fields)) {\n return (_a = parameters === null || parameters === void 0 ? void 0 : parameters.fields) === null || _a === void 0 ? void 0 : _a.join(',');\n }\n\n return undefined;\n }();\n\n return [4\n /*yield*/\n , this.httpRequest.get(url, removeUndefinedFromObject(__assign(__assign({}, parameters), {\n fields: fields\n })))];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Get one document\r\n *\r\n * @param documentId - Document ID\r\n * @param parameters - Parameters applied on a document\r\n * @returns Promise containing Document response\r\n */\n\n\n Index.prototype.getDocument = function (documentId, parameters) {\n return __awaiter(this, void 0, void 0, function () {\n var url, fields;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents/\").concat(documentId);\n\n fields = function () {\n var _a;\n\n if (Array.isArray(parameters === null || parameters === void 0 ? void 0 : parameters.fields)) {\n return (_a = parameters === null || parameters === void 0 ? void 0 : parameters.fields) === null || _a === void 0 ? void 0 : _a.join(',');\n }\n\n return undefined;\n }();\n\n return [4\n /*yield*/\n , this.httpRequest.get(url, removeUndefinedFromObject(__assign(__assign({}, parameters), {\n fields: fields\n })))];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Add or replace multiples documents to an index\r\n *\r\n * @param documents - Array of Document objects to add/replace\r\n * @param options - Options on document addition\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.addDocuments = function (documents, options) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents\");\n return [4\n /*yield*/\n , this.httpRequest.post(url, documents, options)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Add or replace multiples documents to an index in batches\r\n *\r\n * @param documents - Array of Document objects to add/replace\r\n * @param batchSize - Size of the batch\r\n * @param options - Options on document addition\r\n * @returns Promise containing array of enqueued task objects for each batch\r\n */\n\n\n Index.prototype.addDocumentsInBatches = function (documents, batchSize, options) {\n if (batchSize === void 0) {\n batchSize = 1000;\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var updates, i, _a, _b;\n\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n updates = [];\n i = 0;\n _c.label = 1;\n\n case 1:\n if (!(i < documents.length)) return [3\n /*break*/\n , 4];\n _b = (_a = updates).push;\n return [4\n /*yield*/\n , this.addDocuments(documents.slice(i, i + batchSize), options)];\n\n case 2:\n _b.apply(_a, [_c.sent()]);\n\n _c.label = 3;\n\n case 3:\n i += batchSize;\n return [3\n /*break*/\n , 1];\n\n case 4:\n return [2\n /*return*/\n , updates];\n }\n });\n });\n };\n /**\r\n * Add or update multiples documents to an index\r\n *\r\n * @param documents - Array of Document objects to add/update\r\n * @param options - Options on document update\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateDocuments = function (documents, options) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents\");\n return [4\n /*yield*/\n , this.httpRequest.put(url, documents, options)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Add or update multiples documents to an index in batches\r\n *\r\n * @param documents - Array of Document objects to add/update\r\n * @param batchSize - Size of the batch\r\n * @param options - Options on document update\r\n * @returns Promise containing array of enqueued task objects for each batch\r\n */\n\n\n Index.prototype.updateDocumentsInBatches = function (documents, batchSize, options) {\n if (batchSize === void 0) {\n batchSize = 1000;\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var updates, i, _a, _b;\n\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n updates = [];\n i = 0;\n _c.label = 1;\n\n case 1:\n if (!(i < documents.length)) return [3\n /*break*/\n , 4];\n _b = (_a = updates).push;\n return [4\n /*yield*/\n , this.updateDocuments(documents.slice(i, i + batchSize), options)];\n\n case 2:\n _b.apply(_a, [_c.sent()]);\n\n _c.label = 3;\n\n case 3:\n i += batchSize;\n return [3\n /*break*/\n , 1];\n\n case 4:\n return [2\n /*return*/\n , updates];\n }\n });\n });\n };\n /**\r\n * Delete one document\r\n *\r\n * @param documentId - Id of Document to delete\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.deleteDocument = function (documentId) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents/\").concat(documentId);\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n };\n /**\r\n * Delete multiples documents of an index\r\n *\r\n * @param documentsIds - Array of Document Ids to delete\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.deleteDocuments = function (documentsIds) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents/delete-batch\");\n return [4\n /*yield*/\n , this.httpRequest.post(url, documentsIds)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Delete all documents of an index\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.deleteAllDocuments = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/documents\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// SETTINGS\n ///\n\n /**\r\n * Retrieve all settings\r\n *\r\n * @returns Promise containing Settings object\r\n */\n\n\n Index.prototype.getSettings = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update all settings Any parameters not provided will be left unchanged.\r\n *\r\n * @param settings - Object containing parameters with their updated values\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateSettings = function (settings) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings\");\n return [4\n /*yield*/\n , this.httpRequest.patch(url, settings)];\n\n case 1:\n task = _a.sent();\n task.enqueued = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n };\n /**\r\n * Reset settings.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetSettings = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// PAGINATION SETTINGS\n ///\n\n /**\r\n * Get the pagination settings.\r\n *\r\n * @returns Promise containing object of pagination settings\r\n */\n\n\n Index.prototype.getPagination = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/pagination\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the pagination settings.\r\n *\r\n * @param pagination - Pagination object\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updatePagination = function (pagination) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/pagination\");\n return [4\n /*yield*/\n , this.httpRequest.patch(url, pagination)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the pagination settings.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetPagination = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/pagination\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n }; ///\n /// SYNONYMS\n ///\n\n /**\r\n * Get the list of all synonyms\r\n *\r\n * @returns Promise containing object of synonym mappings\r\n */\n\n\n Index.prototype.getSynonyms = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/synonyms\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the list of synonyms. Overwrite the old list.\r\n *\r\n * @param synonyms - Mapping of synonyms with their associated words\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateSynonyms = function (synonyms) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/synonyms\");\n return [4\n /*yield*/\n , this.httpRequest.put(url, synonyms)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the synonym list to be empty again\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetSynonyms = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/synonyms\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// STOP WORDS\n ///\n\n /**\r\n * Get the list of all stop-words\r\n *\r\n * @returns Promise containing array of stop-words\r\n */\n\n\n Index.prototype.getStopWords = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/stop-words\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the list of stop-words. Overwrite the old list.\r\n *\r\n * @param stopWords - Array of strings that contains the stop-words.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateStopWords = function (stopWords) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/stop-words\");\n return [4\n /*yield*/\n , this.httpRequest.put(url, stopWords)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the stop-words list to be empty again\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetStopWords = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/stop-words\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// RANKING RULES\n ///\n\n /**\r\n * Get the list of all ranking-rules\r\n *\r\n * @returns Promise containing array of ranking-rules\r\n */\n\n\n Index.prototype.getRankingRules = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/ranking-rules\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the list of ranking-rules. Overwrite the old list.\r\n *\r\n * @param rankingRules - Array that contain ranking rules sorted by order of\r\n * importance.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateRankingRules = function (rankingRules) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/ranking-rules\");\n return [4\n /*yield*/\n , this.httpRequest.put(url, rankingRules)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the ranking rules list to its default value\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetRankingRules = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/ranking-rules\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// DISTINCT ATTRIBUTE\n ///\n\n /**\r\n * Get the distinct-attribute\r\n *\r\n * @returns Promise containing the distinct-attribute of the index\r\n */\n\n\n Index.prototype.getDistinctAttribute = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/distinct-attribute\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the distinct-attribute.\r\n *\r\n * @param distinctAttribute - Field name of the distinct-attribute\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateDistinctAttribute = function (distinctAttribute) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/distinct-attribute\");\n return [4\n /*yield*/\n , this.httpRequest.put(url, distinctAttribute)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the distinct-attribute.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetDistinctAttribute = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/distinct-attribute\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// FILTERABLE ATTRIBUTES\n ///\n\n /**\r\n * Get the filterable-attributes\r\n *\r\n * @returns Promise containing an array of filterable-attributes\r\n */\n\n\n Index.prototype.getFilterableAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/filterable-attributes\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the filterable-attributes.\r\n *\r\n * @param filterableAttributes - Array of strings containing the attributes\r\n * that can be used as filters at query time\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateFilterableAttributes = function (filterableAttributes) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/filterable-attributes\");\n return [4\n /*yield*/\n , this.httpRequest.put(url, filterableAttributes)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the filterable-attributes.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetFilterableAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/filterable-attributes\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// SORTABLE ATTRIBUTES\n ///\n\n /**\r\n * Get the sortable-attributes\r\n *\r\n * @returns Promise containing array of sortable-attributes\r\n */\n\n\n Index.prototype.getSortableAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/sortable-attributes\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the sortable-attributes.\r\n *\r\n * @param sortableAttributes - Array of strings containing the attributes that\r\n * can be used to sort search results at query time\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateSortableAttributes = function (sortableAttributes) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/sortable-attributes\");\n return [4\n /*yield*/\n , this.httpRequest.put(url, sortableAttributes)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the sortable-attributes.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetSortableAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/sortable-attributes\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// SEARCHABLE ATTRIBUTE\n ///\n\n /**\r\n * Get the searchable-attributes\r\n *\r\n * @returns Promise containing array of searchable-attributes\r\n */\n\n\n Index.prototype.getSearchableAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/searchable-attributes\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the searchable-attributes.\r\n *\r\n * @param searchableAttributes - Array of strings that contains searchable\r\n * attributes sorted by order of importance(most to least important)\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateSearchableAttributes = function (searchableAttributes) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/searchable-attributes\");\n return [4\n /*yield*/\n , this.httpRequest.put(url, searchableAttributes)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the searchable-attributes.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetSearchableAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/searchable-attributes\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// DISPLAYED ATTRIBUTE\n ///\n\n /**\r\n * Get the displayed-attributes\r\n *\r\n * @returns Promise containing array of displayed-attributes\r\n */\n\n\n Index.prototype.getDisplayedAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/displayed-attributes\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the displayed-attributes.\r\n *\r\n * @param displayedAttributes - Array of strings that contains attributes of\r\n * an index to display\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateDisplayedAttributes = function (displayedAttributes) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/displayed-attributes\");\n return [4\n /*yield*/\n , this.httpRequest.put(url, displayedAttributes)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the displayed-attributes.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetDisplayedAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/displayed-attributes\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// TYPO TOLERANCE\n ///\n\n /**\r\n * Get the typo tolerance settings.\r\n *\r\n * @returns Promise containing the typo tolerance settings.\r\n */\n\n\n Index.prototype.getTypoTolerance = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/typo-tolerance\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the typo tolerance settings.\r\n *\r\n * @param typoTolerance - Object containing the custom typo tolerance\r\n * settings.\r\n * @returns Promise containing object of the enqueued update\r\n */\n\n\n Index.prototype.updateTypoTolerance = function (typoTolerance) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/typo-tolerance\");\n return [4\n /*yield*/\n , this.httpRequest.patch(url, typoTolerance)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n };\n /**\r\n * Reset the typo tolerance settings.\r\n *\r\n * @returns Promise containing object of the enqueued update\r\n */\n\n\n Index.prototype.resetTypoTolerance = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/typo-tolerance\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n task.enqueuedAt = new Date(task.enqueuedAt);\n return [2\n /*return*/\n , task];\n }\n });\n });\n }; ///\n /// FACETING\n ///\n\n /**\r\n * Get the faceting settings.\r\n *\r\n * @returns Promise containing object of faceting index settings\r\n */\n\n\n Index.prototype.getFaceting = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/faceting\");\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update the faceting settings.\r\n *\r\n * @param faceting - Faceting index settings object\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.updateFaceting = function (faceting) {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/faceting\");\n return [4\n /*yield*/\n , this.httpRequest.patch(url, faceting)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n /**\r\n * Reset the faceting settings.\r\n *\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Index.prototype.resetFaceting = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes/\".concat(this.uid, \"/settings/faceting\");\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n };\n\n return Index;\n }();\n\n /*\r\n * Bundle: MeiliSearch\r\n * Project: MeiliSearch - Javascript API\r\n * Author: Quentin de Quelen <quentin@meilisearch.com>\r\n * Copyright: 2019, MeiliSearch\r\n */\n\n var Client =\n /** @class */\n function () {\n /**\r\n * Creates new MeiliSearch instance\r\n *\r\n * @param config - Configuration object\r\n */\n function Client(config) {\n this.config = config;\n this.httpRequest = new HttpRequests(config);\n this.tasks = new TaskClient(config);\n }\n /**\r\n * Return an Index instance\r\n *\r\n * @param indexUid - The index UID\r\n * @returns Instance of Index\r\n */\n\n\n Client.prototype.index = function (indexUid) {\n return new Index(this.config, indexUid);\n };\n /**\r\n * Gather information about an index by calling MeiliSearch and return an\r\n * Index instance with the gathered information\r\n *\r\n * @param indexUid - The index UID\r\n * @returns Promise returning Index instance\r\n */\n\n\n Client.prototype.getIndex = function (indexUid) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2\n /*return*/\n , new Index(this.config, indexUid).fetchInfo()];\n });\n });\n };\n /**\r\n * Gather information about an index by calling MeiliSearch and return the raw\r\n * JSON response\r\n *\r\n * @param indexUid - The index UID\r\n * @returns Promise returning index information\r\n */\n\n\n Client.prototype.getRawIndex = function (indexUid) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2\n /*return*/\n , new Index(this.config, indexUid).getRawInfo()];\n });\n });\n };\n /**\r\n * Get all the indexes as Index instances.\r\n *\r\n * @param parameters - Parameters to browse the indexes\r\n * @returns Promise returning array of raw index information\r\n */\n\n\n Client.prototype.getIndexes = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var rawIndexes, indexes;\n\n var _this = this;\n\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.getRawIndexes(parameters)];\n\n case 1:\n rawIndexes = _a.sent();\n indexes = rawIndexes.results.map(function (index) {\n return new Index(_this.config, index.uid, index.primaryKey);\n });\n return [2\n /*return*/\n , __assign(__assign({}, rawIndexes), {\n results: indexes\n })];\n }\n });\n });\n };\n /**\r\n * Get all the indexes in their raw value (no Index instances).\r\n *\r\n * @param parameters - Parameters to browse the indexes\r\n * @returns Promise returning array of raw index information\r\n */\n\n\n Client.prototype.getRawIndexes = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"indexes\";\n return [4\n /*yield*/\n , this.httpRequest.get(url, parameters)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Create a new index\r\n *\r\n * @param uid - The index UID\r\n * @param options - Index options\r\n * @returns Promise returning Index instance\r\n */\n\n\n Client.prototype.createIndex = function (uid, options) {\n if (options === void 0) {\n options = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , Index.create(uid, options, this.config)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update an index\r\n *\r\n * @param uid - The index UID\r\n * @param options - Index options to update\r\n * @returns Promise returning Index instance after updating\r\n */\n\n\n Client.prototype.updateIndex = function (uid, options) {\n if (options === void 0) {\n options = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , new Index(this.config, uid).update(options)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Delete an index\r\n *\r\n * @param uid - The index UID\r\n * @returns Promise which resolves when index is deleted successfully\r\n */\n\n\n Client.prototype.deleteIndex = function (uid) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , new Index(this.config, uid)[\"delete\"]()];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Deletes an index if it already exists.\r\n *\r\n * @param uid - The index UID\r\n * @returns Promise which resolves to true when index exists and is deleted\r\n * successfully, otherwise false if it does not exist\r\n */\n\n\n Client.prototype.deleteIndexIfExists = function (uid) {\n return __awaiter(this, void 0, void 0, function () {\n var e_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2,, 3]);\n\n return [4\n /*yield*/\n , this.deleteIndex(uid)];\n\n case 1:\n _a.sent();\n\n return [2\n /*return*/\n , true];\n\n case 2:\n e_1 = _a.sent();\n\n if (e_1.code === \"index_not_found\"\n /* ErrorStatusCode.INDEX_NOT_FOUND */\n ) {\n return [2\n /*return*/\n , false];\n }\n\n throw e_1;\n\n case 3:\n return [2\n /*return*/\n ];\n }\n });\n });\n };\n /**\r\n * Swaps a list of index tuples.\r\n *\r\n * @param params - List of indexes tuples to swap.\r\n * @returns Promise returning object of the enqueued task\r\n */\n\n\n Client.prototype.swapIndexes = function (params) {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = '/swap-indexes';\n return [4\n /*yield*/\n , this.httpRequest.post(url, params)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n }; ///\n /// Multi Search\n ///\n\n /**\r\n * Perform multiple search queries.\r\n *\r\n * It is possible to make multiple search queries on the same index or on\r\n * different ones\r\n *\r\n * @example\r\n *\r\n * ```ts\r\n * client.multiSearch({\r\n * queries: [\r\n * { indexUid: 'movies', q: 'wonder' },\r\n * { indexUid: 'books', q: 'flower' },\r\n * ],\r\n * })\r\n * ```\r\n *\r\n * @param queries - Search queries\r\n * @param config - Additional request configuration options\r\n * @returns Promise containing the search responses\r\n */\n\n\n Client.prototype.multiSearch = function (queries, config) {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"/multi-search\";\n return [4\n /*yield*/\n , this.httpRequest.post(url, queries, undefined, config)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n }; ///\n /// TASKS\n ///\n\n /**\r\n * Get the list of all client tasks\r\n *\r\n * @param parameters - Parameters to browse the tasks\r\n * @returns Promise returning all tasks\r\n */\n\n\n Client.prototype.getTasks = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.getTasks(parameters)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Get one task on the client scope\r\n *\r\n * @param taskUid - Task identifier\r\n * @returns Promise returning a task\r\n */\n\n\n Client.prototype.getTask = function (taskUid) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.getTask(taskUid)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Wait for multiple tasks to be finished.\r\n *\r\n * @param taskUids - Tasks identifier\r\n * @param waitOptions - Options on timeout and interval\r\n * @returns Promise returning an array of tasks\r\n */\n\n\n Client.prototype.waitForTasks = function (taskUids, _a) {\n var _b = _a === void 0 ? {} : _a,\n _c = _b.timeOutMs,\n timeOutMs = _c === void 0 ? 5000 : _c,\n _d = _b.intervalMs,\n intervalMs = _d === void 0 ? 50 : _d;\n\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.waitForTasks(taskUids, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n })];\n\n case 1:\n return [2\n /*return*/\n , _e.sent()];\n }\n });\n });\n };\n /**\r\n * Wait for a task to be finished.\r\n *\r\n * @param taskUid - Task identifier\r\n * @param waitOptions - Options on timeout and interval\r\n * @returns Promise returning an array of tasks\r\n */\n\n\n Client.prototype.waitForTask = function (taskUid, _a) {\n var _b = _a === void 0 ? {} : _a,\n _c = _b.timeOutMs,\n timeOutMs = _c === void 0 ? 5000 : _c,\n _d = _b.intervalMs,\n intervalMs = _d === void 0 ? 50 : _d;\n\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.waitForTask(taskUid, {\n timeOutMs: timeOutMs,\n intervalMs: intervalMs\n })];\n\n case 1:\n return [2\n /*return*/\n , _e.sent()];\n }\n });\n });\n };\n /**\r\n * Cancel a list of enqueued or processing tasks.\r\n *\r\n * @param parameters - Parameters to filter the tasks.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Client.prototype.cancelTasks = function (parameters) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.cancelTasks(parameters)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Delete a list of tasks.\r\n *\r\n * @param parameters - Parameters to filter the tasks.\r\n * @returns Promise containing an EnqueuedTask\r\n */\n\n\n Client.prototype.deleteTasks = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n return [4\n /*yield*/\n , this.tasks.deleteTasks(parameters)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n }; ///\n /// KEYS\n ///\n\n /**\r\n * Get all API keys\r\n *\r\n * @param parameters - Parameters to browse the indexes\r\n * @returns Promise returning an object with keys\r\n */\n\n\n Client.prototype.getKeys = function (parameters) {\n if (parameters === void 0) {\n parameters = {};\n }\n\n return __awaiter(this, void 0, void 0, function () {\n var url, keys;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"keys\";\n return [4\n /*yield*/\n , this.httpRequest.get(url, parameters)];\n\n case 1:\n keys = _a.sent();\n keys.results = keys.results.map(function (key) {\n return __assign(__assign({}, key), {\n createdAt: new Date(key.createdAt),\n updateAt: new Date(key.updateAt)\n });\n });\n return [2\n /*return*/\n , keys];\n }\n });\n });\n };\n /**\r\n * Get one API key\r\n *\r\n * @param keyOrUid - Key or uid of the API key\r\n * @returns Promise returning a key\r\n */\n\n\n Client.prototype.getKey = function (keyOrUid) {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"keys/\".concat(keyOrUid);\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Create one API key\r\n *\r\n * @param options - Key options\r\n * @returns Promise returning a key\r\n */\n\n\n Client.prototype.createKey = function (options) {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"keys\";\n return [4\n /*yield*/\n , this.httpRequest.post(url, options)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Update one API key\r\n *\r\n * @param keyOrUid - Key\r\n * @param options - Key options\r\n * @returns Promise returning a key\r\n */\n\n\n Client.prototype.updateKey = function (keyOrUid, options) {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"keys/\".concat(keyOrUid);\n return [4\n /*yield*/\n , this.httpRequest.patch(url, options)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Delete one API key\r\n *\r\n * @param keyOrUid - Key\r\n * @returns\r\n */\n\n\n Client.prototype.deleteKey = function (keyOrUid) {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"keys/\".concat(keyOrUid);\n return [4\n /*yield*/\n , this.httpRequest[\"delete\"](url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n }; ///\n /// HEALTH\n ///\n\n /**\r\n * Checks if the server is healthy, otherwise an error will be thrown.\r\n *\r\n * @returns Promise returning an object with health details\r\n */\n\n\n Client.prototype.health = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"health\";\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n };\n /**\r\n * Checks if the server is healthy, return true or false.\r\n *\r\n * @returns Promise returning a boolean\r\n */\n\n\n Client.prototype.isHealthy = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2,, 3]);\n\n url = \"health\";\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n _a.sent();\n\n return [2\n /*return*/\n , true];\n\n case 2:\n _a.sent();\n return [2\n /*return*/\n , false];\n\n case 3:\n return [2\n /*return*/\n ];\n }\n });\n });\n }; ///\n /// STATS\n ///\n\n /**\r\n * Get the stats of all the database\r\n *\r\n * @returns Promise returning object of all the stats\r\n */\n\n\n Client.prototype.getStats = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"stats\";\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n }; ///\n /// VERSION\n ///\n\n /**\r\n * Get the version of MeiliSearch\r\n *\r\n * @returns Promise returning object with version details\r\n */\n\n\n Client.prototype.getVersion = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"version\";\n return [4\n /*yield*/\n , this.httpRequest.get(url)];\n\n case 1:\n return [2\n /*return*/\n , _a.sent()];\n }\n });\n });\n }; ///\n /// DUMPS\n ///\n\n /**\r\n * Creates a dump\r\n *\r\n * @returns Promise returning object of the enqueued task\r\n */\n\n\n Client.prototype.createDump = function () {\n return __awaiter(this, void 0, void 0, function () {\n var url, task;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n url = \"dumps\";\n return [4\n /*yield*/\n , this.httpRequest.post(url)];\n\n case 1:\n task = _a.sent();\n return [2\n /*return*/\n , new EnqueuedTask(task)];\n }\n });\n });\n }; ///\n /// TOKENS\n ///\n\n /**\r\n * Generate a tenant token\r\n *\r\n * @param apiKeyUid - The uid of the api key used as issuer of the token.\r\n * @param searchRules - Search rules that are applied to every search.\r\n * @param options - Token options to customize some aspect of the token.\r\n * @returns The token in JWT format.\r\n */\n\n\n Client.prototype.generateTenantToken = function (_apiKeyUid, _searchRules, _options) {\n var error = new Error();\n throw new Error(\"Meilisearch: failed to generate a tenant token. Generation of a token only works in a node environment \\n \".concat(error.stack, \".\"));\n };\n\n return Client;\n }();\n\n var MeiliSearch =\n /** @class */\n function (_super) {\n __extends(MeiliSearch, _super);\n\n function MeiliSearch(config) {\n return _super.call(this, config) || this;\n }\n\n return MeiliSearch;\n }(Client);\n\n exports.Index = Index;\n exports.MatchingStrategies = MatchingStrategies;\n exports.MeiliSearch = MeiliSearch;\n exports.MeiliSearchApiError = MeiliSearchApiError;\n exports.MeiliSearchCommunicationError = MeiliSearchCommunicationError;\n exports.MeiliSearchError = MeiliSearchError;\n exports.MeiliSearchTimeOutError = MeiliSearchTimeOutError;\n exports[\"default\"] = MeiliSearch;\n exports.httpErrorHandler = httpErrorHandler;\n exports.httpResponseErrorHandler = httpResponseErrorHandler;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n}));\n"],"names":["exports","MatchingStrategies","ALL","LAST","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","this","constructor","create","__assign","assign","t","s","i","n","arguments","length","apply","__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","Promise","reject","fulfilled","step","next","e","rejected","result","done","then","__generator","body","f","y","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","v","op","pop","push","MeiliSearchCommunicationError","_super","message","url","stack","_a","_b","_c","_this","name","Response","statusText","statusCode","status","Error","errno","code","replace","concat","captureStackTrace","MeiliSearchApiError","class_1","error","type","link","httpStatus","httpResponseErrorHandler","response","responseBody","ok","json","httpErrorHandler","MeiliSearchError","MeiliSearchTimeOutError","removeUndefinedFromObject","obj","entries","reduce","acc","curEntry","key","val","undefined","sleep","ms","setTimeout","addProtocolIfNotPresent","host","startsWith","addTrailingSlash","endsWith","PACKAGE_VERSION","toQueryParams","parameters","keys","isArray","join","Date","toISOString","constructHostURL","cloneAndParseHeaders","headers","headerPair","clonedHeaders_1","forEach","createHeaders","config","agentHeader","packageAgent","contentType","authorization","requestConfig","apiKey","clientAgents","clients","HttpRequests","httpClient","URL","request","method","params","constructURL","queryParams_1","fetchFn","e_1","URLSearchParams","filter","x","map","set","search","toString","fetch","JSON","stringify","res","get","post","data","put","patch","EnqueuedTask","task","taskUid","indexUid","enqueuedAt","Task","uid","details","canceledBy","duration","startedAt","finishedAt","TaskClient","httpRequest","getTask","taskItem","getTasks","tasks","results","waitForTask","timeOutMs","_d","intervalMs","startingTime","_e","now","includes","waitForTasks","taskUids","_i","taskUids_1","cancelTasks","deleteTasks","Index","primaryKey","query","options","q","searchGet","parseFilter","getParams","_f","sort","facets","attributesToRetrieve","attributesToCrop","attributesToHighlight","getRawInfo","updatedAt","createdAt","fetchInfo","fetchPrimaryKey","update","indexUids","getStats","getDocuments","fields","getDocument","documentId","addDocuments","documents","addDocumentsInBatches","batchSize","updates","slice","updateDocuments","updateDocumentsInBatches","deleteDocument","deleteDocuments","documentsIds","deleteAllDocuments","getSettings","updateSettings","settings","enqueued","resetSettings","getPagination","updatePagination","pagination","resetPagination","getSynonyms","updateSynonyms","synonyms","resetSynonyms","getStopWords","updateStopWords","stopWords","resetStopWords","getRankingRules","updateRankingRules","rankingRules","resetRankingRules","getDistinctAttribute","updateDistinctAttribute","distinctAttribute","resetDistinctAttribute","getFilterableAttributes","updateFilterableAttributes","filterableAttributes","resetFilterableAttributes","getSortableAttributes","updateSortableAttributes","sortableAttributes","resetSortableAttributes","getSearchableAttributes","updateSearchableAttributes","searchableAttributes","resetSearchableAttributes","getDisplayedAttributes","updateDisplayedAttributes","displayedAttributes","resetDisplayedAttributes","getTypoTolerance","updateTypoTolerance","typoTolerance","resetTypoTolerance","getFaceting","updateFaceting","faceting","resetFaceting","MeiliSearch","Client","index","getIndex","getRawIndex","getIndexes","rawIndexes","indexes","getRawIndexes","createIndex","updateIndex","deleteIndex","deleteIndexIfExists","swapIndexes","multiSearch","queries","getKeys","updateAt","getKey","keyOrUid","createKey","updateKey","deleteKey","health","isHealthy","getVersion","createDump","generateTenantToken","_apiKeyUid","_searchRules","_options","defineProperty","factory","require$$0"],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/filter-adapter.d.ts.map b/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/filter-adapter.d.ts.map
index ee2c86a..9eaccf9 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/filter-adapter.d.ts.map
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/filter-adapter.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"filter-adapter.d.ts","sourceRoot":"","sources":["../../../../src/adapter/search-request-adapter/filter-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AA4FxD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,cAAc,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAC/C,YAAY,EAAE,aAAa,CAAC,cAAc,CAAC,GAC1C,MAAM,CASR"}
\ No newline at end of file
+{"version":3,"file":"filter-adapter.d.ts","sourceRoot":"","sources":["../../../../src/adapter/search-request-adapter/filter-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AA6ExD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,cAAc,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAC/C,YAAY,EAAE,aAAa,CAAC,cAAc,CAAC,GAC1C,MAAM,CASR"}
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/search-resolver.d.ts b/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/search-resolver.d.ts
index f3f3b50..d8880d5 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/search-resolver.d.ts
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/search-resolver.d.ts
@@ -1,8 +1,8 @@
-import { MeiliSearch, SearchCacheInterface, MeiliSearchMultiSearchParams, MeilisearchMultiSearchResult, PaginationState } from '../../types';
+import { MeiliSearch, SearchCacheInterface, MeiliSearchMultiSearchParams, MeilisearchMultiSearchResult, PaginationState, InstantMeiliSearchOptions } from '../../types';
/**
* @param {ResponseCacher} cache
*/
-export declare function SearchResolver(client: MeiliSearch, cache: SearchCacheInterface): {
+export declare function SearchResolver(client: MeiliSearch, cache: SearchCacheInterface, handleResults?: InstantMeiliSearchOptions['handleResults']): {
multiSearch: (searchQueries: MeiliSearchMultiSearchParams[], instantSearchPagination: PaginationState[]) => Promise<MeilisearchMultiSearchResult[]>;
};
//# sourceMappingURL=search-resolver.d.ts.map
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/search-resolver.d.ts.map b/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/search-resolver.d.ts.map
index c5ba623..55b983d 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/search-resolver.d.ts.map
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/adapter/search-request-adapter/search-resolver.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"search-resolver.d.ts","sourceRoot":"","sources":["../../../../src/adapter/search-request-adapter/search-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,4BAA4B,EAC5B,4BAA4B,EAC5B,eAAe,EAChB,MAAM,aAAa,CAAA;AAEpB;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,oBAAoB;iCAIR,4BAA4B,EAAE,2BACpB,eAAe,EAAE,KACzC,QAAQ,4BAA4B,EAAE,CAAC;EA4B7C"}
\ No newline at end of file
+{"version":3,"file":"search-resolver.d.ts","sourceRoot":"","sources":["../../../../src/adapter/search-request-adapter/search-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,4BAA4B,EAC5B,4BAA4B,EAC5B,eAAe,EACf,yBAAyB,EAC1B,MAAM,aAAa,CAAA;AAEpB;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,oBAAoB,EAC3B,aAAa,CAAC,EAAE,yBAAyB,CAAC,eAAe,CAAC;iCAIvC,4BAA4B,EAAE,2BACpB,eAAe,EAAE,KACzC,QAAQ,4BAA4B,EAAE,CAAC;EAqC7C"}
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/cache/init-facets-distribution.d.ts b/node_modules/@meilisearch/instant-meilisearch/dist/types/cache/init-facets-distribution.d.ts
index 98aef28..150bd0e 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/cache/init-facets-distribution.d.ts
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/cache/init-facets-distribution.d.ts
@@ -1,5 +1,4 @@
-import { FacetDistribution, SearchContext, MeiliSearchMultiSearchParams, MultiSearchResolver, MeilisearchMultiSearchResult } from '../types';
+import { FacetDistribution, SearchContext, MeiliSearchMultiSearchParams, MultiSearchResolver } from '../types';
export declare function getParametersWithoutFilters(searchContext: SearchContext): MeiliSearchMultiSearchParams;
export declare function initFacetDistribution(searchResolver: MultiSearchResolver, queries: MeiliSearchMultiSearchParams[], initialFacetDistribution: Record<string, FacetDistribution>): Promise<Record<string, FacetDistribution>>;
-export declare function fillMissingFacets(initialFacetDistribution: Record<string, FacetDistribution>, meilisearchResults: MeilisearchMultiSearchResult[]): Record<string, FacetDistribution>;
//# sourceMappingURL=init-facets-distribution.d.ts.map
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/cache/init-facets-distribution.d.ts.map b/node_modules/@meilisearch/instant-meilisearch/dist/types/cache/init-facets-distribution.d.ts.map
index 1e105fb..3bf4387 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/cache/init-facets-distribution.d.ts.map
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/cache/init-facets-distribution.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"init-facets-distribution.d.ts","sourceRoot":"","sources":["../../../src/cache/init-facets-distribution.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,4BAA4B,EAC5B,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,UAAU,CAAA;AAIjB,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,aAAa,GAC3B,4BAA4B,CAc9B;AAKD,wBAAsB,qBAAqB,CACzC,cAAc,EAAE,mBAAmB,EACnC,OAAO,EAAE,4BAA4B,EAAE,EACvC,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAC1D,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAoB5C;AAED,wBAAgB,iBAAiB,CAC/B,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAC3D,kBAAkB,EAAE,4BAA4B,EAAE,qCASnD"}
\ No newline at end of file
+{"version":3,"file":"init-facets-distribution.d.ts","sourceRoot":"","sources":["../../../src/cache/init-facets-distribution.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,4BAA4B,EAC5B,mBAAmB,EACpB,MAAM,UAAU,CAAA;AAIjB,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,aAAa,GAC3B,4BAA4B,CAc9B;AAKD,wBAAsB,qBAAqB,CACzC,cAAc,EAAE,mBAAmB,EACnC,OAAO,EAAE,4BAA4B,EAAE,EACvC,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAC1D,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAoB5C"}
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/client/instant-meilisearch-client.d.ts.map b/node_modules/@meilisearch/instant-meilisearch/dist/types/client/instant-meilisearch-client.d.ts.map
index 1e51546..314a81a 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/client/instant-meilisearch-client.d.ts.map
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/client/instant-meilisearch-client.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"instant-meilisearch-client.d.ts","sourceRoot":"","sources":["../../../src/client/instant-meilisearch-client.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAS3B,MAAM,UAAU,CAAA;AAoBjB;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAM,EACpC,yBAAyB,GAAE,yBAA8B,GACxD,0BAA0B,CA8I5B"}
\ No newline at end of file
+{"version":3,"file":"instant-meilisearch-client.d.ts","sourceRoot":"","sources":["../../../src/client/instant-meilisearch-client.ts"],"names":[],"mappings":"AACA,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAO3B,MAAM,UAAU,CAAA;AAmBjB;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAM,EACpC,yBAAyB,GAAE,yBAA8B,GACxD,0BAA0B,CA2G5B"}
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/index.d.ts b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/index.d.ts
index d27bd47..8d91f8f 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/index.d.ts
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/index.d.ts
@@ -1,2 +1,2 @@
-export { createSearchContext, createFacetSearchContext } from './search-context';
+export { createSearchContext } from './search-context';
//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/index.d.ts.map b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/index.d.ts.map
index 2b0de04..adb6ec0 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/index.d.ts.map
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/index.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contexts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAA"}
\ No newline at end of file
+{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contexts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA"}
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/search-context.d.ts b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/search-context.d.ts
index 1182045..4017d1d 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/search-context.d.ts
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/search-context.d.ts
@@ -1,14 +1,8 @@
-import { InstantMeiliSearchOptions, AlgoliaMultipleQueriesQuery, SearchContext, AlgoliaSearchForFacetValuesRequest } from '../types';
+import { InstantMeiliSearchOptions, AlgoliaMultipleQueriesQuery, SearchContext } from '../types';
/**
* @param {AlgoliaMultipleQueriesQuery} searchRequest
* @param {Context} options
* @returns {SearchContext}
*/
export declare function createSearchContext(searchRequest: AlgoliaMultipleQueriesQuery, options: InstantMeiliSearchOptions): SearchContext;
-/**
- * @param {AlgoliaMultipleQueriesQuery} searchRequest
- * @param {Context} options
- * @returns {SearchContext}
- */
-export declare function createFacetSearchContext(searchRequest: AlgoliaSearchForFacetValuesRequest, options: InstantMeiliSearchOptions): SearchContext;
//# sourceMappingURL=search-context.d.ts.map
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/search-context.d.ts.map b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/search-context.d.ts.map
index b65969e..55c85f4 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/search-context.d.ts.map
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/search-context.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"search-context.d.ts","sourceRoot":"","sources":["../../../src/contexts/search-context.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,aAAa,EACb,kCAAkC,EACnC,MAAM,UAAU,CAAA;AAqBjB;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,2BAA2B,EAC1C,OAAO,EAAE,yBAAyB,GACjC,aAAa,CAsBf;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,kCAAkC,EACjD,OAAO,EAAE,yBAAyB,GACjC,aAAa,CAwBf"}
\ No newline at end of file
+{"version":3,"file":"search-context.d.ts","sourceRoot":"","sources":["../../../src/contexts/search-context.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,aAAa,EACd,MAAM,UAAU,CAAA;AAKjB;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,2BAA2B,EAC1C,OAAO,EAAE,yBAAyB,GACjC,aAAa,CAuBf"}
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/sort-context.d.ts b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/sort-context.d.ts
index ffb39ca..f757831 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/sort-context.d.ts
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/sort-context.d.ts
@@ -1,18 +1,6 @@
/**
- * Split sort string into an array.
- *
- * Example:
- * '_geoPoint(37.8153, -122.4784):asc,title:asc,description:desc'
- *
- * becomes:
- * [
- * '_geoPoint(37.8153, -122.4784):asc',
- * 'title:asc',
- * 'description:desc',
- * ]
- *
- * @param {string} sortStr
+ * @param {string} rawSort
* @returns {string[]}
*/
-export declare function splitSortString(sortStr: string): string[];
+export declare function createSortState(rawSort: string): string[];
//# sourceMappingURL=sort-context.d.ts.map
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/sort-context.d.ts.map b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/sort-context.d.ts.map
index c913b62..ecf4aff 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/sort-context.d.ts.map
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/contexts/sort-context.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"sort-context.d.ts","sourceRoot":"","sources":["../../../src/contexts/sort-context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAKzD"}
\ No newline at end of file
+{"version":3,"file":"sort-context.d.ts","sourceRoot":"","sources":["../../../src/contexts/sort-context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAKzD"}
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/package-version.d.ts b/node_modules/@meilisearch/instant-meilisearch/dist/types/package-version.d.ts
index dedbf1b..8756959 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/package-version.d.ts
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/package-version.d.ts
@@ -1,2 +1,2 @@
-export declare const PACKAGE_VERSION = "0.13.6";
+export declare const PACKAGE_VERSION = "0.13.0";
//# sourceMappingURL=package-version.d.ts.map
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/types/types.d.ts b/node_modules/@meilisearch/instant-meilisearch/dist/types/types/types.d.ts
index aa18d3b..ccb7559 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/types/types.d.ts
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/types/types.d.ts
@@ -1,24 +1,14 @@
import type { SearchClient } from 'instantsearch.js';
-import type { MultipleQueriesQuery as AlgoliaMultipleQueriesQuery, multipleSearchForFacetValues } from '@algolia/client-search';
+import type { MultipleQueriesQuery as AlgoliaMultipleQueriesQuery } from '@algolia/client-search';
import type { MultiSearchQuery as MeiliSearchMultiSearchParams, MultiSearchResult, Config as MeilisearchConfig } from 'meilisearch';
export type { AlgoliaMultipleQueriesQuery, MultiSearchResult };
-export type { SearchResponse as AlgoliaSearchResponse, SearchForFacetValuesResponse as AlgoliaSearchForFacetValuesResponse, } from '@algolia/client-search';
-export type AlgoliaSearchForFacetValuesRequests = Parameters<ReturnType<typeof multipleSearchForFacetValues>>[0];
-export type AlgoliaSearchForFacetValuesRequest = AlgoliaSearchForFacetValuesRequests[0];
+export type { SearchResponse as AlgoliaSearchResponse } from '@algolia/client-search';
export type { Filter, FacetDistribution, MeiliSearch, FacetStats as MeiliFacetStats, MultiSearchQuery as MeiliSearchMultiSearchParams, Config as MeilisearchConfig, } from 'meilisearch';
export type InstantSearchParams = AlgoliaMultipleQueriesQuery['params'];
export declare const enum MatchingStrategies {
ALL = "all",
LAST = "last"
}
-export type InstantMeiliSearchOptions = Pick<MeilisearchConfig, 'requestConfig' | 'httpClient'> & {
- placeholderSearch?: boolean;
- primaryKey?: string;
- keepZeroFacets?: boolean;
- clientAgents?: string[];
- matchingStrategy?: MatchingStrategies;
- finitePagination?: boolean;
-};
export type InstantMeiliSearchConfig = {
placeholderSearch: boolean;
keepZeroFacets: boolean;
@@ -91,4 +81,13 @@ export type AlgoliaFacetStats = Record<string, {
*/
sum: number;
}>;
+export type InstantMeiliSearchOptions = Pick<MeilisearchConfig, 'requestConfig' | 'httpClient'> & {
+ placeholderSearch?: boolean;
+ primaryKey?: string;
+ keepZeroFacets?: boolean;
+ clientAgents?: string[];
+ matchingStrategy?: MatchingStrategies;
+ finitePagination?: boolean;
+ handleResults?: (results: MeilisearchMultiSearchResult[], searchQueries: MeiliSearchMultiSearchParams[]) => MeilisearchMultiSearchResult[];
+};
//# sourceMappingURL=types.d.ts.map
\ No newline at end of file
diff --git a/node_modules/@meilisearch/instant-meilisearch/dist/types/types/types.d.ts.map b/node_modules/@meilisearch/instant-meilisearch/dist/types/types/types.d.ts.map
index 479ac4c..e269d22 100644
--- a/node_modules/@meilisearch/instant-meilisearch/dist/types/types/types.d.ts.map
+++ b/node_modules/@meilisearch/instant-meilisearch/dist/types/types/types.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,KAAK,EACV,oBAAoB,IAAI,2BAA2B,EACnD,4BAA4B,EAC7B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EACV,gBAAgB,IAAI,4BAA4B,EAChD,iBAAiB,EACjB,MAAM,IAAI,iBAAiB,EAC5B,MAAM,aAAa,CAAA;AAEpB,YAAY,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,CAAA;AAC9D,YAAY,EACV,cAAc,IAAI,qBAAqB,EACvC,4BAA4B,IAAI,mCAAmC,GACpE,MAAM,wBAAwB,CAAA;AAE/B,MAAM,MAAM,mCAAmC,GAAG,UAAU,CAC1D,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAChD,CAAC,CAAC,CAAC,CAAA;AAEJ,MAAM,MAAM,kCAAkC,GAC5C,mCAAmC,CAAC,CAAC,CAAC,CAAA;AAExC,YAAY,EACV,MAAM,EACN,iBAAiB,EACjB,WAAW,EACX,UAAU,IAAI,eAAe,EAC7B,gBAAgB,IAAI,4BAA4B,EAChD,MAAM,IAAI,iBAAiB,GAC5B,MAAM,aAAa,CAAA;AAEpB,MAAM,MAAM,mBAAmB,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAA;AAEvE,0BAAkB,kBAAkB;IAClC,GAAG,QAAQ;IACX,IAAI,SAAS;CACd;AAED,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,iBAAiB,EACjB,eAAe,GAAG,YAAY,CAC/B,GAAG;IACF,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,gBAAgB,CAAC,EAAE,kBAAkB,CAAA;IACrC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,iBAAiB,EAAE,OAAO,CAAA;IAC1B,cAAc,EAAE,OAAO,
View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment