export default async function handleRequest()

in packages/search-ui-engines-connector/src/handlers/search/index.ts [22:55]


export default async function handleRequest(
  configuration: SearchHandlerConfiguration
): Promise<ResponseState> {
  const { state, queryConfig } = configuration;
  const searchkitConfig = buildConfiguration({
    state,
    queryConfig
  });

  const request = Searchkit(searchkitConfig, configuration.transporter);

  const searchkitVariables = buildRequest(state, queryConfig);

  const baseFilters = buildBaseFilters(queryConfig.filters);

  const results = await request
    .query(searchkitVariables.query)
    .setFilters(searchkitVariables.filters)
    .setSortBy(searchkitVariables.sort)
    .execute(
      {
        facets:
          queryConfig.facets && Object.keys(queryConfig.facets).length > 0,
        hits: {
          from: searchkitVariables.from,
          size: searchkitVariables.size,
          includeRawHit: true
        }
      },
      baseFilters
    );

  return buildResponse(results);
}