UNPKG

@lableb/javascript-sdk

Version:

Lableb cloud search client for javascript

53 lines (33 loc) 1.75 kB
import { LablebHttpClient } from "../../http-client"; import { BatchAutocompleteFeedbackRequestParams, SingleAutocompleteFeedbackRequestParams } from "../../request/autocomplete-feedback/autocomplete-feedback.request.type"; import { camelCaseToSnackCaseObject } from "../../utils"; import { LablebAPIResponseWrapper, LablebSDKContext } from "../lableb-client/lableb-client.type"; import { AutocompleteFeedbackResponse } from "./autocomplete-feedback.type"; export async function lablebClientSingleAutocompleteFeedback( this: LablebSDKContext, singleAutocompleteFeedbackOptions: SingleAutocompleteFeedbackRequestParams ): Promise<LablebAPIResponseWrapper<AutocompleteFeedbackResponse>> { const { url, headers, method, params, body } = await this.requestBuilder.feedback.autocomplete.single(singleAutocompleteFeedbackOptions); const interceptedRequestParams = ({ method, url, headers, params: camelCaseToSnackCaseObject(params), body: body.map(camelCaseToSnackCaseObject), }); return await LablebHttpClient(interceptedRequestParams); } export async function lablebClientBatchAutocompleteFeedback( this: LablebSDKContext, batchAutocompleteFeedbackOptions: BatchAutocompleteFeedbackRequestParams ): Promise<LablebAPIResponseWrapper<AutocompleteFeedbackResponse>> { const { url, headers, method, params, body } = await this.requestBuilder.feedback.autocomplete.batch(batchAutocompleteFeedbackOptions); const interceptedRequestParams = ({ method, url, headers, params: camelCaseToSnackCaseObject(params), body: body.map(camelCaseToSnackCaseObject), }); return await LablebHttpClient(interceptedRequestParams); }