UNPKG

@lableb/javascript-sdk

Version:

Lableb cloud search client for javascript

51 lines (33 loc) 1.64 kB
import { LablebHttpClient } from "../../http-client"; import { BatchSearchFeedbackRequestParams, SingleSearchFeedbackRequestParams } from "../../request/search-feedback/search-feedback.request.type"; import { camelCaseToSnackCaseObject } from "../../utils"; import { LablebAPIResponseWrapper, LablebSDKContext } from "../lableb-client/lableb-client.type"; import { SearchFeedbackResponse } from "./search-feedback.type"; export async function lablebClientSingleSearchFeedback( this: LablebSDKContext, singleSearchFeedbackOptions: SingleSearchFeedbackRequestParams ): Promise<LablebAPIResponseWrapper<SearchFeedbackResponse>> { const { url, headers, method, params, body } = await this.requestBuilder.feedback.search.single(singleSearchFeedbackOptions); const interceptedRequestParams = ({ method, url, headers, params: camelCaseToSnackCaseObject(params), body: body.map(camelCaseToSnackCaseObject), }); return await LablebHttpClient(interceptedRequestParams); } export async function lablebClientBatchSearchFeedback( this: LablebSDKContext, batchSearchFeedbackOptions: BatchSearchFeedbackRequestParams ): Promise<LablebAPIResponseWrapper<SearchFeedbackResponse>> { const { url, headers, method, params, body } = await this.requestBuilder.feedback.search.batch(batchSearchFeedbackOptions); const interceptedRequestParams = ({ method, url, headers, params: camelCaseToSnackCaseObject(params), body: body.map(camelCaseToSnackCaseObject), }); return await LablebHttpClient(interceptedRequestParams); }