1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-06 02:15:48 +03:00

fix FT.SEARCH

This commit is contained in:
leibale
2021-11-30 21:34:37 -05:00
parent 70872d8839
commit cba0289ff7
3 changed files with 8 additions and 8 deletions

View File

@@ -1,6 +1,6 @@
import { RedisCommandArguments } from '@node-redis/client/dist/lib/commands';
import { pushVerdictArgument, transformReplyTuples, TuplesObject } from '@node-redis/client/dist/lib/commands/generic-transformers';
import { PropertyName, pushArgumentsWithLength, pushSortByArguments, SortByOptions } from '.';
import { PropertyName, pushArgumentsWithLength, pushSortByArguments, SortByProperty } from '.';
export enum AggregateSteps {
GROUPBY = 'GROUPBY',
@@ -95,7 +95,7 @@ interface GroupByStep extends AggregateStep<AggregateSteps.GROUPBY> {
}
interface SortStep extends AggregateStep<AggregateSteps.SORTBY> {
BY: SortByOptions | Array<SortByOptions>;
BY: SortByProperty | Array<SortByProperty>;
MAX?: number;
}

View File

@@ -1,6 +1,6 @@
import { RedisCommandArguments } from '@node-redis/client/dist/lib/commands';
import { pushOptionalVerdictArgument, pushVerdictArgument, transformReplyTuples } from '@node-redis/client/dist/lib/commands/generic-transformers';
import { RedisSearchLanguages, PropertyName, pushSortByProperty, SortByOptions } from '.';
import { RedisSearchLanguages, PropertyName, pushSortByProperty, SortByProperty } from '.';
export const FIRST_KEY_INDEX = 1;
@@ -48,8 +48,8 @@ interface SearchOptions {
SCORER?: string;
// EXPLAINSCORE?: true; // TODO: WITHSCORES
// PAYLOAD?: ;
SORTBY?: SortByOptions;
// MSORTBY?: SortByOptions | Array<SortByOptions>;
SORTBY?: SortByProperty;
// MSORTBY?: SortByProperty | Array<SortByProperty>;
LIMIT?: {
from: number | string;
size: number | string;

View File

@@ -117,12 +117,12 @@ export enum RedisSearchLanguages {
export type PropertyName = `${'@' | '$.'}${string}`;
export type SortByOptions = PropertyName | {
export type SortByProperty = PropertyName | {
BY: PropertyName;
DIRECTION?: 'ASC' | 'DESC';
};
function pushSortByProperty(args: RedisCommandArguments, sortBy: SortByOptions): void {
export function pushSortByProperty(args: RedisCommandArguments, sortBy: SortByProperty): void {
if (typeof sortBy === 'string') {
args.push(sortBy);
} else {
@@ -134,7 +134,7 @@ function pushSortByProperty(args: RedisCommandArguments, sortBy: SortByOptions):
}
}
export function pushSortByArguments(args: RedisCommandArguments, name: string, sortBy: SortByOptions | Array<SortByOptions>): RedisCommandArguments {
export function pushSortByArguments(args: RedisCommandArguments, name: string, sortBy: SortByProperty | Array<SortByProperty>): RedisCommandArguments {
const lengthBefore = args.push(
name,
'' // will be overwritten