Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
.then(() =>
browseObjects(source)({
// eslint-disable-next-line functional/immutable-data
batch: objects => responses.push(saveObjects(destination)(objects, requestOptions)),
})
)
.then(() =>
browseRules(source)({
// eslint-disable-next-line functional/immutable-data
batch: rules => responses.push(saveRules(destination)(rules, requestOptions)),
})
)
.then(() =>
browseSynonyms(source)({
// eslint-disable-next-line functional/immutable-data
batch: synonyms => responses.push(saveSynonyms(destination)(synonyms, requestOptions)),
})
)
export const accountCopyIndex = (
source: SearchIndex,
destination: SearchIndex,
requestOptions: RequestOptions
): WaitablePromise => {
// eslint-disable-next-line functional/prefer-readonly-type
const responses: Array> = [];
const promise = exists(destination)()
.then(res => {
if (source.appId === destination.appId) {
throw createIndicesInSameAppError(source.appId);
}
if (res) {
throw createDestinationIndiceExistsError();
}
})
.then(() => getSettings(source)())
.then(settings =>
// eslint-disable-next-line functional/immutable-data
responses.push(setSettings(destination)(settings, requestOptions))
)
.then(() =>
browseRules(source)({
.then(settings =>
// eslint-disable-next-line functional/immutable-data
responses.push(setSettings(destination)(settings, requestOptions))
)
connect: 2,
read: 5,
write: 30,
},
requester: createNodeHttpRequester(),
logger: createNullLogger(),
responsesCache: createNullCache(),
requestsCache: createNullCache(),
hostsCache: createInMemoryCache(),
userAgent: createUserAgent(version).add({
segment: 'Node.js',
version: process.versions.node,
}),
};
return createSearchClient({
...clientOptions,
methods: {
search: multipleQueries,
searchForFacetValues: multipleSearchForFacetValues,
multipleBatch,
multipleGetObjects,
multipleQueries,
copyIndex,
copySettings,
copySynonyms,
moveIndex,
listIndices,
getLogs,
listClusters,
multipleSearchForFacetValues,
getApiKey,
export default function algoliasearch(
appId: string,
apiKey: string,
options: AlgoliaSearchOptions = {}
): SearchClient {
const logger = createConsoleLogger(options.logLevel || LogLevelEnum.Error);
return createSearchClient({
appId,
apiKey,
timeouts: {
connect: 1,
read: 2,
write: 30,
},
requester: createBrowserXhrRequester(),
logger,
responsesCache: createInMemoryCache(),
requestsCache: createInMemoryCache({ serializable: false }),
hostsCache: createFallbackableCache({
caches: [
createBrowserLocalStorageCache({ key: `${version}-${appId}` }),
createInMemoryCache(),
],
timeouts: {
connect: 1,
read: 2,
write: 30,
},
requester: createBrowserXhrRequester(),
logger,
responsesCache: createInMemoryCache(),
requestsCache: createInMemoryCache({ serializable: false }),
hostsCache: createFallbackableCache({
caches: [createBrowserLocalStorageCache({ version }), createInMemoryCache()],
}),
userAgent: createUserAgent(version).add({ segment: 'Browser' }),
};
return createSearchClient({
...clientOptions,
methods: {
search: multipleQueries,
searchForFacetValues: multipleSearchForFacetValues,
multipleBatch,
multipleGetObjects,
multipleQueries,
copyIndex,
copySettings,
copySynonyms,
moveIndex,
listIndices,
getLogs,
listClusters,
multipleSearchForFacetValues,
getApiKey,
.then(() => getSettings(source)())
.then(settings =>
batch: objects => responses.push(saveObjects(destination)(objects, requestOptions)),
})