You've already forked node-redis
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:
@@ -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;
|
||||
}
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -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
|
||||
|
Reference in New Issue
Block a user