@redis/search 5.10.0 → 5.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -32,6 +32,24 @@ await client.ft.create('idx:animals', {
32
32
 
33
33
  See the [`FT.CREATE` documentation](https://redis.io/commands/ft.create/#description) for information about the different field types and additional options.
34
34
 
35
+ #### Indexing a Field Multiple Times
36
+
37
+ You can index the same field multiple times with different types or aliases by using an array:
38
+
39
+ ```javascript
40
+ await client.ft.create('idx:products', {
41
+ sku: [
42
+ { type: SCHEMA_FIELD_TYPE.TEXT, AS: 'sku_text' },
43
+ { type: SCHEMA_FIELD_TYPE.TAG, AS: 'sku_tag', SORTABLE: true }
44
+ ]
45
+ }, {
46
+ ON: 'HASH',
47
+ PREFIX: 'product:'
48
+ });
49
+ ```
50
+
51
+ This allows querying the same field using different search strategies.
52
+
35
53
  #### Querying the Index
36
54
 
37
55
  Once we've created an index, and added some data to Redis hashes whose keys begin with the prefix `noderedis:animals`, we can start writing some search queries. RediSearch supports a rich query syntax for full-text search, faceted search, aggregation and more. Check out the [`FT.SEARCH` documentation](https://redis.io/commands/ft.search) and the [query syntax reference](https://redis.io/docs/interact/search-and-query/query) for more information.
@@ -62,7 +62,7 @@ interface FirstValueReducer extends GroupByReducerWithProperty<FT_AGGREGATE_GROU
62
62
  interface RandomSampleReducer extends GroupByReducerWithProperty<FT_AGGREGATE_GROUP_BY_REDUCERS['RANDOM_SAMPLE']> {
63
63
  sampleSize: number;
64
64
  }
65
- type GroupByReducers = CountReducer | CountDistinctReducer | CountDistinctishReducer | SumReducer | MinReducer | MaxReducer | AvgReducer | StdDevReducer | QuantileReducer | ToListReducer | FirstValueReducer | RandomSampleReducer;
65
+ export type GroupByReducers = CountReducer | CountDistinctReducer | CountDistinctishReducer | SumReducer | MinReducer | MaxReducer | AvgReducer | StdDevReducer | QuantileReducer | ToListReducer | FirstValueReducer | RandomSampleReducer;
66
66
  interface GroupByStep extends AggregateStep<FT_AGGREGATE_STEPS['GROUPBY']> {
67
67
  properties?: RediSearchProperty | Array<RediSearchProperty>;
68
68
  REDUCE: GroupByReducers | Array<GroupByReducers>;
@@ -127,4 +127,5 @@ declare const _default: {
127
127
  };
128
128
  export default _default;
129
129
  export declare function parseAggregateOptions(parser: CommandParser, options?: FtAggregateOptions): void;
130
+ export declare function parseGroupByReducer(parser: CommandParser, reducer: GroupByReducers): void;
130
131
  //# sourceMappingURL=AGGREGATE.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AGGREGATE.d.ts","sourceRoot":"","sources":["../../../lib/commands/AGGREGATE.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AGGREGATE.d.ts","sourceRoot":"","sources":["../../../lib/commands/AGGREGATE.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseAggregateOptions = exports.FT_AGGREGATE_GROUP_BY_REDUCERS = exports.FT_AGGREGATE_STEPS = void 0;
3
+ exports.parseGroupByReducer = exports.parseAggregateOptions = exports.FT_AGGREGATE_GROUP_BY_REDUCERS = exports.FT_AGGREGATE_STEPS = void 0;
4
4
  const SEARCH_1 = require("./SEARCH");
5
5
  const generic_transformers_1 = require("@redis/client/dist/lib/commands/generic-transformers");
6
6
  const default_1 = require("../dialect/default");
@@ -197,6 +197,7 @@ function parseGroupByReducer(parser, reducer) {
197
197
  parser.push('AS', reducer.AS);
198
198
  }
199
199
  }
200
+ exports.parseGroupByReducer = parseGroupByReducer;
200
201
  function pushSortByProperty(args, sortBy) {
201
202
  if (typeof sortBy === 'string' || sortBy instanceof Buffer) {
202
203
  args.push(sortBy);
@@ -1 +1 @@
1
- {"version":3,"file":"AGGREGATE.js","sourceRoot":"","sources":["../../../lib/commands/AGGREGATE.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AGGREGATE.js","sourceRoot":"","sources":["../../../lib/commands/AGGREGATE.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ interface SchemaCommonField<T extends SchemaFieldType = SchemaFieldType> extends
22
22
  export declare const SCHEMA_TEXT_FIELD_PHONETIC: {
23
23
  readonly DM_EN: "dm:en";
24
24
  readonly DM_FR: "dm:fr";
25
- readonly FM_PT: "dm:pt";
25
+ readonly DM_PT: "dm:pt";
26
26
  readonly DM_ES: "dm:es";
27
27
  };
28
28
  export type SchemaTextFieldPhonetic = typeof SCHEMA_TEXT_FIELD_PHONETIC[keyof typeof SCHEMA_TEXT_FIELD_PHONETIC];
@@ -103,8 +103,29 @@ export type SchemaGeoShapeFieldCoordSystem = typeof SCHEMA_GEO_SHAPE_COORD_SYSTE
103
103
  interface SchemaGeoShapeField extends SchemaField<typeof SCHEMA_FIELD_TYPE['GEOSHAPE']> {
104
104
  COORD_SYSTEM?: SchemaGeoShapeFieldCoordSystem;
105
105
  }
106
+ /**
107
+ * Union type representing all possible field definition types for a RediSearch schema.
108
+ */
109
+ export type SchemaFieldDefinition = SchemaTextField | SchemaNumericField | SchemaGeoField | SchemaTagField | SchemaFlatVectorField | SchemaHNSWVectorField | SchemaVAMANAVectorField | SchemaGeoShapeField | SchemaFieldType;
110
+ /**
111
+ * Schema definition for a RediSearch index.
112
+ *
113
+ * Each field can be either a single field definition or an array of definitions.
114
+ * Use an array to index the same field multiple times with different types or aliases.
115
+ *
116
+ * @example
117
+ * // Single field definitions
118
+ * { name: SCHEMA_FIELD_TYPE.TEXT, age: SCHEMA_FIELD_TYPE.NUMERIC }
119
+ *
120
+ * @example
121
+ * // Same field indexed as both TEXT and TAG with different aliases
122
+ * { sku: [
123
+ * { type: SCHEMA_FIELD_TYPE.TEXT, AS: 'sku_text' },
124
+ * { type: SCHEMA_FIELD_TYPE.TAG, AS: 'sku_tag', SORTABLE: true }
125
+ * ]}
126
+ */
106
127
  export interface RediSearchSchema {
107
- [field: string]: (SchemaTextField | SchemaNumericField | SchemaGeoField | SchemaTagField | SchemaFlatVectorField | SchemaHNSWVectorField | SchemaVAMANAVectorField | SchemaGeoShapeField | SchemaFieldType);
128
+ [field: string]: SchemaFieldDefinition | SchemaFieldDefinition[];
108
129
  }
109
130
  export declare function parseSchema(parser: CommandParser, schema: RediSearchSchema): void;
110
131
  export declare const REDISEARCH_LANGUAGE: {
@@ -160,7 +181,8 @@ declare const _default: {
160
181
  * Creates a new search index with the given schema and options.
161
182
  * @param parser - The command parser
162
183
  * @param index - Name of the index to create
163
- * @param schema - Index schema defining field names and types (TEXT, NUMERIC, GEO, TAG, VECTOR, GEOSHAPE)
184
+ * @param schema - Index schema defining field names and types (TEXT, NUMERIC, GEO, TAG, VECTOR, GEOSHAPE).
185
+ * Each field can be a single definition or an array to index the same field multiple times with different configurations.
164
186
  * @param options - Optional parameters:
165
187
  * - ON: Type of container to index (HASH or JSON)
166
188
  * - PREFIX: Prefixes for document keys to index
@@ -1 +1 @@
1
- {"version":3,"file":"CREATE.d.ts","sourceRoot":"","sources":["../../../lib/commands/CREATE.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CREATE.d.ts","sourceRoot":"","sources":["../../../lib/commands/CREATE.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ exports.SCHEMA_FIELD_TYPE = {
13
13
  exports.SCHEMA_TEXT_FIELD_PHONETIC = {
14
14
  DM_EN: 'dm:en',
15
15
  DM_FR: 'dm:fr',
16
- FM_PT: 'dm:pt',
16
+ DM_PT: 'dm:pt',
17
17
  DM_ES: 'dm:es'
18
18
  };
19
19
  exports.SCHEMA_VECTOR_FIELD_ALGORITHM = {
@@ -48,112 +48,118 @@ function parseCommonSchemaFieldOptions(parser, fieldOptions) {
48
48
  }
49
49
  }
50
50
  function parseSchema(parser, schema) {
51
- for (const [field, fieldOptions] of Object.entries(schema)) {
52
- parser.push(field);
53
- if (typeof fieldOptions === 'string') {
54
- parser.push(fieldOptions);
55
- continue;
56
- }
57
- if (fieldOptions.AS) {
58
- parser.push('AS', fieldOptions.AS);
59
- }
60
- parser.push(fieldOptions.type);
61
- if (fieldOptions.INDEXMISSING) {
62
- parser.push('INDEXMISSING');
63
- }
64
- switch (fieldOptions.type) {
65
- case exports.SCHEMA_FIELD_TYPE.TEXT:
66
- if (fieldOptions.NOSTEM) {
67
- parser.push('NOSTEM');
68
- }
69
- if (fieldOptions.WEIGHT !== undefined) {
70
- parser.push('WEIGHT', fieldOptions.WEIGHT.toString());
71
- }
72
- if (fieldOptions.PHONETIC) {
73
- parser.push('PHONETIC', fieldOptions.PHONETIC);
74
- }
75
- if (fieldOptions.WITHSUFFIXTRIE) {
76
- parser.push('WITHSUFFIXTRIE');
77
- }
78
- if (fieldOptions.INDEXEMPTY) {
79
- parser.push('INDEXEMPTY');
80
- }
81
- parseCommonSchemaFieldOptions(parser, fieldOptions);
82
- break;
83
- case exports.SCHEMA_FIELD_TYPE.NUMERIC:
84
- case exports.SCHEMA_FIELD_TYPE.GEO:
85
- parseCommonSchemaFieldOptions(parser, fieldOptions);
86
- break;
87
- case exports.SCHEMA_FIELD_TYPE.TAG:
88
- if (fieldOptions.SEPARATOR) {
89
- parser.push('SEPARATOR', fieldOptions.SEPARATOR);
90
- }
91
- if (fieldOptions.CASESENSITIVE) {
92
- parser.push('CASESENSITIVE');
93
- }
94
- if (fieldOptions.WITHSUFFIXTRIE) {
95
- parser.push('WITHSUFFIXTRIE');
96
- }
97
- if (fieldOptions.INDEXEMPTY) {
98
- parser.push('INDEXEMPTY');
99
- }
100
- parseCommonSchemaFieldOptions(parser, fieldOptions);
101
- break;
102
- case exports.SCHEMA_FIELD_TYPE.VECTOR:
103
- parser.push(fieldOptions.ALGORITHM);
104
- const args = [];
105
- args.push('TYPE', fieldOptions.TYPE, 'DIM', fieldOptions.DIM.toString(), 'DISTANCE_METRIC', fieldOptions.DISTANCE_METRIC);
106
- if (fieldOptions.INITIAL_CAP !== undefined) {
107
- args.push('INITIAL_CAP', fieldOptions.INITIAL_CAP.toString());
108
- }
109
- switch (fieldOptions.ALGORITHM) {
110
- case exports.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:
111
- if (fieldOptions.BLOCK_SIZE !== undefined) {
112
- args.push('BLOCK_SIZE', fieldOptions.BLOCK_SIZE.toString());
113
- }
114
- break;
115
- case exports.SCHEMA_VECTOR_FIELD_ALGORITHM.HNSW:
116
- if (fieldOptions.M !== undefined) {
117
- args.push('M', fieldOptions.M.toString());
118
- }
119
- if (fieldOptions.EF_CONSTRUCTION !== undefined) {
120
- args.push('EF_CONSTRUCTION', fieldOptions.EF_CONSTRUCTION.toString());
121
- }
122
- if (fieldOptions.EF_RUNTIME !== undefined) {
123
- args.push('EF_RUNTIME', fieldOptions.EF_RUNTIME.toString());
124
- }
125
- break;
126
- case exports.SCHEMA_VECTOR_FIELD_ALGORITHM['VAMANA']:
127
- if (fieldOptions.COMPRESSION) {
128
- args.push('COMPRESSION', fieldOptions.COMPRESSION);
129
- }
130
- if (fieldOptions.CONSTRUCTION_WINDOW_SIZE !== undefined) {
131
- args.push('CONSTRUCTION_WINDOW_SIZE', fieldOptions.CONSTRUCTION_WINDOW_SIZE.toString());
132
- }
133
- if (fieldOptions.GRAPH_MAX_DEGREE !== undefined) {
134
- args.push('GRAPH_MAX_DEGREE', fieldOptions.GRAPH_MAX_DEGREE.toString());
135
- }
136
- if (fieldOptions.SEARCH_WINDOW_SIZE !== undefined) {
137
- args.push('SEARCH_WINDOW_SIZE', fieldOptions.SEARCH_WINDOW_SIZE.toString());
138
- }
139
- if (fieldOptions.EPSILON !== undefined) {
140
- args.push('EPSILON', fieldOptions.EPSILON.toString());
141
- }
142
- if (fieldOptions.TRAINING_THRESHOLD !== undefined) {
143
- args.push('TRAINING_THRESHOLD', fieldOptions.TRAINING_THRESHOLD.toString());
144
- }
145
- if (fieldOptions.REDUCE !== undefined) {
146
- args.push('REDUCE', fieldOptions.REDUCE.toString());
147
- }
148
- break;
149
- }
150
- parser.pushVariadicWithLength(args);
151
- break;
152
- case exports.SCHEMA_FIELD_TYPE.GEOSHAPE:
153
- if (fieldOptions.COORD_SYSTEM !== undefined) {
154
- parser.push('COORD_SYSTEM', fieldOptions.COORD_SYSTEM);
155
- }
156
- break;
51
+ for (const [field, fieldOptionsOrArray] of Object.entries(schema)) {
52
+ // Normalize to array for uniform processing
53
+ const fieldOptionsList = Array.isArray(fieldOptionsOrArray)
54
+ ? fieldOptionsOrArray
55
+ : [fieldOptionsOrArray];
56
+ for (const fieldOptions of fieldOptionsList) {
57
+ parser.push(field);
58
+ if (typeof fieldOptions === 'string') {
59
+ parser.push(fieldOptions);
60
+ continue;
61
+ }
62
+ if (fieldOptions.AS) {
63
+ parser.push('AS', fieldOptions.AS);
64
+ }
65
+ parser.push(fieldOptions.type);
66
+ if (fieldOptions.INDEXMISSING) {
67
+ parser.push('INDEXMISSING');
68
+ }
69
+ switch (fieldOptions.type) {
70
+ case exports.SCHEMA_FIELD_TYPE.TEXT:
71
+ if (fieldOptions.NOSTEM) {
72
+ parser.push('NOSTEM');
73
+ }
74
+ if (fieldOptions.WEIGHT !== undefined) {
75
+ parser.push('WEIGHT', fieldOptions.WEIGHT.toString());
76
+ }
77
+ if (fieldOptions.PHONETIC) {
78
+ parser.push('PHONETIC', fieldOptions.PHONETIC);
79
+ }
80
+ if (fieldOptions.WITHSUFFIXTRIE) {
81
+ parser.push('WITHSUFFIXTRIE');
82
+ }
83
+ if (fieldOptions.INDEXEMPTY) {
84
+ parser.push('INDEXEMPTY');
85
+ }
86
+ parseCommonSchemaFieldOptions(parser, fieldOptions);
87
+ break;
88
+ case exports.SCHEMA_FIELD_TYPE.NUMERIC:
89
+ case exports.SCHEMA_FIELD_TYPE.GEO:
90
+ parseCommonSchemaFieldOptions(parser, fieldOptions);
91
+ break;
92
+ case exports.SCHEMA_FIELD_TYPE.TAG:
93
+ if (fieldOptions.SEPARATOR) {
94
+ parser.push('SEPARATOR', fieldOptions.SEPARATOR);
95
+ }
96
+ if (fieldOptions.CASESENSITIVE) {
97
+ parser.push('CASESENSITIVE');
98
+ }
99
+ if (fieldOptions.WITHSUFFIXTRIE) {
100
+ parser.push('WITHSUFFIXTRIE');
101
+ }
102
+ if (fieldOptions.INDEXEMPTY) {
103
+ parser.push('INDEXEMPTY');
104
+ }
105
+ parseCommonSchemaFieldOptions(parser, fieldOptions);
106
+ break;
107
+ case exports.SCHEMA_FIELD_TYPE.VECTOR:
108
+ parser.push(fieldOptions.ALGORITHM);
109
+ const args = [];
110
+ args.push('TYPE', fieldOptions.TYPE, 'DIM', fieldOptions.DIM.toString(), 'DISTANCE_METRIC', fieldOptions.DISTANCE_METRIC);
111
+ if (fieldOptions.INITIAL_CAP !== undefined) {
112
+ args.push('INITIAL_CAP', fieldOptions.INITIAL_CAP.toString());
113
+ }
114
+ switch (fieldOptions.ALGORITHM) {
115
+ case exports.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:
116
+ if (fieldOptions.BLOCK_SIZE !== undefined) {
117
+ args.push('BLOCK_SIZE', fieldOptions.BLOCK_SIZE.toString());
118
+ }
119
+ break;
120
+ case exports.SCHEMA_VECTOR_FIELD_ALGORITHM.HNSW:
121
+ if (fieldOptions.M !== undefined) {
122
+ args.push('M', fieldOptions.M.toString());
123
+ }
124
+ if (fieldOptions.EF_CONSTRUCTION !== undefined) {
125
+ args.push('EF_CONSTRUCTION', fieldOptions.EF_CONSTRUCTION.toString());
126
+ }
127
+ if (fieldOptions.EF_RUNTIME !== undefined) {
128
+ args.push('EF_RUNTIME', fieldOptions.EF_RUNTIME.toString());
129
+ }
130
+ break;
131
+ case exports.SCHEMA_VECTOR_FIELD_ALGORITHM['VAMANA']:
132
+ if (fieldOptions.COMPRESSION) {
133
+ args.push('COMPRESSION', fieldOptions.COMPRESSION);
134
+ }
135
+ if (fieldOptions.CONSTRUCTION_WINDOW_SIZE !== undefined) {
136
+ args.push('CONSTRUCTION_WINDOW_SIZE', fieldOptions.CONSTRUCTION_WINDOW_SIZE.toString());
137
+ }
138
+ if (fieldOptions.GRAPH_MAX_DEGREE !== undefined) {
139
+ args.push('GRAPH_MAX_DEGREE', fieldOptions.GRAPH_MAX_DEGREE.toString());
140
+ }
141
+ if (fieldOptions.SEARCH_WINDOW_SIZE !== undefined) {
142
+ args.push('SEARCH_WINDOW_SIZE', fieldOptions.SEARCH_WINDOW_SIZE.toString());
143
+ }
144
+ if (fieldOptions.EPSILON !== undefined) {
145
+ args.push('EPSILON', fieldOptions.EPSILON.toString());
146
+ }
147
+ if (fieldOptions.TRAINING_THRESHOLD !== undefined) {
148
+ args.push('TRAINING_THRESHOLD', fieldOptions.TRAINING_THRESHOLD.toString());
149
+ }
150
+ if (fieldOptions.REDUCE !== undefined) {
151
+ args.push('REDUCE', fieldOptions.REDUCE.toString());
152
+ }
153
+ break;
154
+ }
155
+ parser.pushVariadicWithLength(args);
156
+ break;
157
+ case exports.SCHEMA_FIELD_TYPE.GEOSHAPE:
158
+ if (fieldOptions.COORD_SYSTEM !== undefined) {
159
+ parser.push('COORD_SYSTEM', fieldOptions.COORD_SYSTEM);
160
+ }
161
+ break;
162
+ }
157
163
  }
158
164
  }
159
165
  }
@@ -192,7 +198,8 @@ exports.default = {
192
198
  * Creates a new search index with the given schema and options.
193
199
  * @param parser - The command parser
194
200
  * @param index - Name of the index to create
195
- * @param schema - Index schema defining field names and types (TEXT, NUMERIC, GEO, TAG, VECTOR, GEOSHAPE)
201
+ * @param schema - Index schema defining field names and types (TEXT, NUMERIC, GEO, TAG, VECTOR, GEOSHAPE).
202
+ * Each field can be a single definition or an array to index the same field multiple times with different configurations.
196
203
  * @param options - Optional parameters:
197
204
  * - ON: Type of container to index (HASH or JSON)
198
205
  * - PREFIX: Prefixes for document keys to index
@@ -1 +1 @@
1
- {"version":3,"file":"CREATE.js","sourceRoot":"","sources":["../../../lib/commands/CREATE.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CREATE.js","sourceRoot":"","sources":["../../../lib/commands/CREATE.ts"],"names":[],"mappings":"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"}
@@ -1,92 +1,150 @@
1
- import { CommandParser } from '@redis/client/dist/lib/client/parser';
2
- import { RedisArgument, ReplyUnion } from '@redis/client/dist/lib/RESP/types';
3
- import { RedisVariadicArgument } from '@redis/client/dist/lib/commands/generic-transformers';
4
- import { FtSearchParams } from './SEARCH';
1
+ /// <reference types="node" />
2
+ import { CommandParser } from "@redis/client/dist/lib/client/parser";
3
+ import { RedisArgument, ReplyUnion } from "@redis/client/dist/lib/RESP/types";
4
+ import { RedisVariadicArgument } from "@redis/client/dist/lib/commands/generic-transformers";
5
+ import { GroupByReducers } from "./AGGREGATE";
6
+ /**
7
+ * Text search expression configuration for hybrid search.
8
+ */
5
9
  export interface FtHybridSearchExpression {
10
+ /** Search query string or parameter reference (e.g., "$q") */
6
11
  query: RedisArgument;
7
- SCORER?: {
8
- algorithm: RedisArgument;
9
- params?: Array<RedisArgument>;
10
- };
12
+ /** Scoring algorithm configuration */
13
+ SCORER?: RedisArgument;
14
+ /** Alias for the text search score in results */
11
15
  YIELD_SCORE_AS?: RedisArgument;
12
16
  }
13
- export interface FtHybridVectorMethod {
14
- KNN?: {
15
- K: number;
16
- EF_RUNTIME?: number;
17
- YIELD_DISTANCE_AS?: RedisArgument;
18
- };
19
- RANGE?: {
20
- RADIUS: number;
21
- EPSILON?: number;
22
- YIELD_DISTANCE_AS?: RedisArgument;
23
- };
17
+ /**
18
+ * Vector search method configuration - either KNN or RANGE.
19
+ */
20
+ export declare const FT_HYBRID_VECTOR_METHOD: {
21
+ /** K-Nearest Neighbors search configuration */
22
+ readonly KNN: "KNN";
23
+ /** Range-based vector search configuration */
24
+ readonly RANGE: "RANGE";
25
+ };
26
+ /** Vector search method type */
27
+ export type FtHybridVectorMethodType = (typeof FT_HYBRID_VECTOR_METHOD)[keyof typeof FT_HYBRID_VECTOR_METHOD];
28
+ interface FtHybridVectorMethodKNN {
29
+ type: (typeof FT_HYBRID_VECTOR_METHOD)["KNN"];
30
+ /** Number of nearest neighbors to find */
31
+ K: number;
32
+ /** Controls the search accuracy vs. speed tradeoff */
33
+ EF_RUNTIME?: number;
34
+ }
35
+ interface FtHybridVectorMethodRange {
36
+ type: (typeof FT_HYBRID_VECTOR_METHOD)["RANGE"];
37
+ /** Maximum distance for matches */
38
+ RADIUS: number;
39
+ /** Provides additional precision control */
40
+ EPSILON?: number;
24
41
  }
42
+ /**
43
+ * Vector similarity search expression configuration.
44
+ */
25
45
  export interface FtHybridVectorExpression {
46
+ /** Vector field name (e.g., "@embedding") */
26
47
  field: RedisArgument;
27
- vectorData: RedisArgument;
28
- method?: FtHybridVectorMethod;
29
- FILTER?: {
30
- expression: RedisArgument;
31
- POLICY?: 'ADHOC' | 'BATCHES' | 'ACORN';
32
- BATCHES?: {
33
- BATCH_SIZE: number;
34
- };
35
- };
48
+ /** Vector parameter reference (e.g., "$v") */
49
+ vector: string;
50
+ /** Search method configuration - KNN or RANGE */
51
+ method?: FtHybridVectorMethodKNN | FtHybridVectorMethodRange;
52
+ /** Pre-filter expression applied before vector search (e.g., "@tag:{foo}") */
53
+ FILTER?: RedisArgument;
54
+ /** Alias for the vector score in results */
36
55
  YIELD_SCORE_AS?: RedisArgument;
37
56
  }
38
- export interface FtHybridCombineMethod {
39
- RRF?: {
40
- count: number;
41
- WINDOW?: number;
42
- CONSTANT?: number;
43
- };
44
- LINEAR?: {
45
- count: number;
46
- ALPHA?: number;
47
- BETA?: number;
48
- };
49
- FUNCTION?: RedisArgument;
57
+ /**
58
+ * Score fusion method type constants for combining search results.
59
+ */
60
+ export declare const FT_HYBRID_COMBINE_METHOD: {
61
+ /** Reciprocal Rank Fusion */
62
+ readonly RRF: "RRF";
63
+ /** Linear combination with ALPHA and BETA weights */
64
+ readonly LINEAR: "LINEAR";
65
+ };
66
+ /** Combine method type */
67
+ export type FtHybridCombineMethodType = (typeof FT_HYBRID_COMBINE_METHOD)[keyof typeof FT_HYBRID_COMBINE_METHOD];
68
+ interface FtHybridCombineMethodRRF {
69
+ type: (typeof FT_HYBRID_COMBINE_METHOD)["RRF"];
70
+ /** RRF constant for score calculation */
71
+ CONSTANT?: number;
72
+ /** Window size for score normalization */
73
+ WINDOW?: number;
74
+ }
75
+ interface FtHybridCombineMethodLinear {
76
+ type: (typeof FT_HYBRID_COMBINE_METHOD)["LINEAR"];
77
+ /** Weight for text search score */
78
+ ALPHA?: number;
79
+ /** Weight for vector search score */
80
+ BETA?: number;
81
+ /** Window size for score normalization */
82
+ WINDOW?: number;
50
83
  }
84
+ /**
85
+ * Apply expression for result transformation.
86
+ */
87
+ export interface FtHybridApply {
88
+ /** Transformation expression to apply */
89
+ expression: RedisArgument;
90
+ /** Alias for the computed value in output */
91
+ AS?: RedisArgument;
92
+ }
93
+ /**
94
+ * Options for the FT.HYBRID command.
95
+ */
51
96
  export interface FtHybridOptions {
52
- SEARCH?: FtHybridSearchExpression;
53
- VSIM?: FtHybridVectorExpression;
97
+ /** Text search expression configuration */
98
+ SEARCH: FtHybridSearchExpression;
99
+ /** Vector similarity search expression configuration */
100
+ VSIM: FtHybridVectorExpression;
101
+ /** Score fusion configuration for combining SEARCH and VSIM results */
54
102
  COMBINE?: {
55
- method: FtHybridCombineMethod;
103
+ /** Fusion method: RRF or LINEAR */
104
+ method: FtHybridCombineMethodRRF | FtHybridCombineMethodLinear;
105
+ /** Alias for the combined score in results */
56
106
  YIELD_SCORE_AS?: RedisArgument;
57
107
  };
108
+ /**
109
+ * Fields to load and return in results (LOAD clause).
110
+ * - Use `"*"` to load all fields from documents
111
+ * - Use a field name or array of field names to load specific fields
112
+ */
58
113
  LOAD?: RedisVariadicArgument;
114
+ /** Group by configuration for aggregation */
59
115
  GROUPBY?: {
116
+ /** Fields to group by */
60
117
  fields: RedisVariadicArgument;
61
- REDUCE?: {
62
- function: RedisArgument;
63
- count: number;
64
- args: Array<RedisArgument>;
65
- };
66
- };
67
- APPLY?: {
68
- expression: RedisArgument;
69
- AS: RedisArgument;
118
+ /** Reducer(s) to apply to each group */
119
+ REDUCE?: GroupByReducers | Array<GroupByReducers>;
70
120
  };
121
+ /** Apply expression(s) for result transformation */
122
+ APPLY?: FtHybridApply | Array<FtHybridApply>;
123
+ /** Sort configuration for results */
71
124
  SORTBY?: {
72
- count: number;
125
+ /** Fields to sort by with optional direction */
73
126
  fields: Array<{
127
+ /** Field name to sort by */
74
128
  field: RedisArgument;
75
- direction?: 'ASC' | 'DESC';
129
+ /** Sort direction: "ASC" (ascending) or "DESC" (descending) */
130
+ direction?: "ASC" | "DESC";
76
131
  }>;
77
132
  };
133
+ /** Disable sorting - returns results in arbitrary order */
134
+ NOSORT?: boolean;
135
+ /** Post-filter expression applied after scoring */
78
136
  FILTER?: RedisArgument;
137
+ /** Pagination configuration */
79
138
  LIMIT?: {
139
+ /** Number of results to skip */
80
140
  offset: number | RedisArgument;
81
- num: number | RedisArgument;
141
+ /** Number of results to return */
142
+ count: number | RedisArgument;
82
143
  };
83
- PARAMS?: FtSearchParams;
84
- EXPLAINSCORE?: boolean;
144
+ /** Query parameters for parameterized queries */
145
+ PARAMS?: Record<string, string | number | Buffer>;
146
+ /** Query timeout in milliseconds */
85
147
  TIMEOUT?: number;
86
- WITHCURSOR?: {
87
- COUNT?: number;
88
- MAXIDLE?: number;
89
- };
90
148
  }
91
149
  declare const _default: {
92
150
  readonly NOT_KEYED_COMMAND: true;
@@ -104,16 +162,22 @@ declare const _default: {
104
162
  * @param options - Hybrid search options including:
105
163
  * - SEARCH: Text search expression with optional scoring
106
164
  * - VSIM: Vector similarity expression with KNN/RANGE methods
107
- * - COMBINE: Fusion method (RRF, LINEAR, FUNCTION)
165
+ * - COMBINE: Fusion method (RRF, LINEAR)
108
166
  * - Post-processing operations: LOAD, GROUPBY, APPLY, SORTBY, FILTER
109
- * - Tunable options: LIMIT, PARAMS, EXPLAINSCORE, TIMEOUT, WITHCURSOR
167
+ * - Tunable options: LIMIT, PARAMS, TIMEOUT
110
168
  */
111
- readonly parseCommand: (this: void, parser: CommandParser, index: RedisArgument, options?: FtHybridOptions) => void;
169
+ readonly parseCommand: (this: void, parser: CommandParser, index: RedisArgument, options: FtHybridOptions) => void;
112
170
  readonly transformReply: {
113
- readonly 2: (reply: any) => any;
171
+ readonly 2: (reply: any) => HybridSearchResult;
114
172
  readonly 3: () => ReplyUnion;
115
173
  };
116
174
  readonly unstableResp3: true;
117
175
  };
118
176
  export default _default;
177
+ export interface HybridSearchResult {
178
+ totalResults: number;
179
+ executionTime: number;
180
+ warnings: string[];
181
+ results: Record<string, any>[];
182
+ }
119
183
  //# sourceMappingURL=HYBRID.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HYBRID.d.ts","sourceRoot":"","sources":["../../../lib/commands/HYBRID.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HYBRID.d.ts","sourceRoot":"","sources":["../../../lib/commands/HYBRID.ts"],"names":[],"mappings":"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"}
@@ -1,112 +1,168 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FT_HYBRID_COMBINE_METHOD = exports.FT_HYBRID_VECTOR_METHOD = void 0;
3
4
  const generic_transformers_1 = require("@redis/client/dist/lib/commands/generic-transformers");
4
5
  const SEARCH_1 = require("./SEARCH");
6
+ const AGGREGATE_1 = require("./AGGREGATE");
7
+ /**
8
+ * Vector search method configuration - either KNN or RANGE.
9
+ */
10
+ exports.FT_HYBRID_VECTOR_METHOD = {
11
+ /** K-Nearest Neighbors search configuration */
12
+ KNN: "KNN",
13
+ /** Range-based vector search configuration */
14
+ RANGE: "RANGE",
15
+ };
16
+ /**
17
+ * Score fusion method type constants for combining search results.
18
+ */
19
+ exports.FT_HYBRID_COMBINE_METHOD = {
20
+ /** Reciprocal Rank Fusion */
21
+ RRF: "RRF",
22
+ /** Linear combination with ALPHA and BETA weights */
23
+ LINEAR: "LINEAR",
24
+ };
5
25
  function parseSearchExpression(parser, search) {
6
- parser.push('SEARCH', search.query);
26
+ parser.push("SEARCH", search.query);
7
27
  if (search.SCORER) {
8
- parser.push('SCORER', search.SCORER.algorithm);
9
- if (search.SCORER.params) {
10
- parser.push(...search.SCORER.params);
11
- }
28
+ parser.push("SCORER", search.SCORER);
12
29
  }
13
30
  if (search.YIELD_SCORE_AS) {
14
- parser.push('YIELD_SCORE_AS', search.YIELD_SCORE_AS);
31
+ parser.push("YIELD_SCORE_AS", search.YIELD_SCORE_AS);
15
32
  }
16
33
  }
17
34
  function parseVectorExpression(parser, vsim) {
18
- parser.push('VSIM', vsim.field, vsim.vectorData);
35
+ parser.push("VSIM", vsim.field, vsim.vector);
19
36
  if (vsim.method) {
20
- if (vsim.method.KNN) {
21
- const knn = vsim.method.KNN;
22
- parser.push('KNN', '1', 'K', knn.K.toString());
23
- if (knn.EF_RUNTIME !== undefined) {
24
- parser.push('EF_RUNTIME', knn.EF_RUNTIME.toString());
37
+ if (vsim.method.type === exports.FT_HYBRID_VECTOR_METHOD.KNN) {
38
+ let argsCount = 2;
39
+ if (vsim.method.EF_RUNTIME !== undefined) {
40
+ argsCount += 2;
25
41
  }
26
- if (knn.YIELD_DISTANCE_AS) {
27
- parser.push('YIELD_DISTANCE_AS', knn.YIELD_DISTANCE_AS);
42
+ parser.push("KNN", argsCount.toString(), "K", vsim.method.K.toString());
43
+ if (vsim.method.EF_RUNTIME !== undefined) {
44
+ parser.push("EF_RUNTIME", vsim.method.EF_RUNTIME.toString());
28
45
  }
29
46
  }
30
- if (vsim.method.RANGE) {
31
- const range = vsim.method.RANGE;
32
- parser.push('RANGE', '1', 'RADIUS', range.RADIUS.toString());
33
- if (range.EPSILON !== undefined) {
34
- parser.push('EPSILON', range.EPSILON.toString());
47
+ if (vsim.method.type === exports.FT_HYBRID_VECTOR_METHOD.RANGE) {
48
+ let argsCount = 2;
49
+ if (vsim.method.EPSILON !== undefined) {
50
+ argsCount += 2;
35
51
  }
36
- if (range.YIELD_DISTANCE_AS) {
37
- parser.push('YIELD_DISTANCE_AS', range.YIELD_DISTANCE_AS);
52
+ parser.push("RANGE", argsCount.toString(), "RADIUS", vsim.method.RADIUS.toString());
53
+ if (vsim.method.EPSILON !== undefined) {
54
+ parser.push("EPSILON", vsim.method.EPSILON.toString());
38
55
  }
39
56
  }
40
57
  }
41
58
  if (vsim.FILTER) {
42
- parser.push('FILTER', vsim.FILTER.expression);
43
- if (vsim.FILTER.POLICY) {
44
- parser.push('POLICY', vsim.FILTER.POLICY);
45
- if (vsim.FILTER.POLICY === 'BATCHES' && vsim.FILTER.BATCHES) {
46
- parser.push('BATCHES', 'BATCH_SIZE', vsim.FILTER.BATCHES.BATCH_SIZE.toString());
47
- }
48
- }
59
+ parser.push("FILTER", vsim.FILTER);
49
60
  }
50
61
  if (vsim.YIELD_SCORE_AS) {
51
- parser.push('YIELD_SCORE_AS', vsim.YIELD_SCORE_AS);
62
+ parser.push("YIELD_SCORE_AS", vsim.YIELD_SCORE_AS);
52
63
  }
53
64
  }
54
65
  function parseCombineMethod(parser, combine) {
55
66
  if (!combine)
56
67
  return;
57
- parser.push('COMBINE');
58
- if (combine.method.RRF) {
59
- const rrf = combine.method.RRF;
60
- parser.push('RRF', rrf.count.toString());
61
- if (rrf.WINDOW !== undefined) {
62
- parser.push('WINDOW', rrf.WINDOW.toString());
68
+ parser.push("COMBINE");
69
+ if (combine.method.type === exports.FT_HYBRID_COMBINE_METHOD.RRF) {
70
+ // Calculate argsCount: 2 per optional (WINDOW, CONSTANT, YIELD_SCORE_AS)
71
+ let argsCount = 0;
72
+ if (combine.method.WINDOW !== undefined) {
73
+ argsCount += 2;
63
74
  }
64
- if (rrf.CONSTANT !== undefined) {
65
- parser.push('CONSTANT', rrf.CONSTANT.toString());
75
+ if (combine.method.CONSTANT !== undefined) {
76
+ argsCount += 2;
66
77
  }
67
- }
68
- if (combine.method.LINEAR) {
69
- const linear = combine.method.LINEAR;
70
- parser.push('LINEAR', linear.count.toString());
71
- if (linear.ALPHA !== undefined) {
72
- parser.push('ALPHA', linear.ALPHA.toString());
78
+ if (combine.YIELD_SCORE_AS) {
79
+ argsCount += 2;
80
+ }
81
+ parser.push("RRF", argsCount.toString());
82
+ if (combine.method.WINDOW !== undefined) {
83
+ parser.push("WINDOW", combine.method.WINDOW.toString());
73
84
  }
74
- if (linear.BETA !== undefined) {
75
- parser.push('BETA', linear.BETA.toString());
85
+ if (combine.method.CONSTANT !== undefined) {
86
+ parser.push("CONSTANT", combine.method.CONSTANT.toString());
76
87
  }
77
88
  }
78
- if (combine.method.FUNCTION) {
79
- parser.push('FUNCTION', combine.method.FUNCTION);
89
+ if (combine.method.type === exports.FT_HYBRID_COMBINE_METHOD.LINEAR) {
90
+ // Calculate argsCount: 2 per optional (ALPHA, BETA, WINDOW, YIELD_SCORE_AS)
91
+ let argsCount = 0;
92
+ if (combine.method.ALPHA !== undefined) {
93
+ argsCount += 2;
94
+ }
95
+ if (combine.method.BETA !== undefined) {
96
+ argsCount += 2;
97
+ }
98
+ if (combine.method.WINDOW !== undefined) {
99
+ argsCount += 2;
100
+ }
101
+ if (combine.YIELD_SCORE_AS) {
102
+ argsCount += 2;
103
+ }
104
+ parser.push("LINEAR", argsCount.toString());
105
+ if (combine.method.ALPHA !== undefined) {
106
+ parser.push("ALPHA", combine.method.ALPHA.toString());
107
+ }
108
+ if (combine.method.BETA !== undefined) {
109
+ parser.push("BETA", combine.method.BETA.toString());
110
+ }
111
+ if (combine.method.WINDOW !== undefined) {
112
+ parser.push("WINDOW", combine.method.WINDOW.toString());
113
+ }
80
114
  }
81
115
  if (combine.YIELD_SCORE_AS) {
82
- parser.push('YIELD_SCORE_AS', combine.YIELD_SCORE_AS);
116
+ parser.push("YIELD_SCORE_AS", combine.YIELD_SCORE_AS);
83
117
  }
84
118
  }
85
- function parseHybridOptions(parser, options) {
86
- if (!options)
87
- return;
88
- if (options.SEARCH) {
89
- parseSearchExpression(parser, options.SEARCH);
90
- }
91
- if (options.VSIM) {
92
- parseVectorExpression(parser, options.VSIM);
119
+ function parseApply(parser, apply) {
120
+ parser.push("APPLY", apply.expression);
121
+ if (apply.AS) {
122
+ parser.push("AS", apply.AS);
93
123
  }
124
+ }
125
+ function parseHybridOptions(parser, options) {
126
+ parseSearchExpression(parser, options.SEARCH);
127
+ parseVectorExpression(parser, options.VSIM);
94
128
  if (options.COMBINE) {
95
129
  parseCombineMethod(parser, options.COMBINE);
96
130
  }
97
- (0, generic_transformers_1.parseOptionalVariadicArgument)(parser, 'LOAD', options.LOAD);
131
+ if (options.LOAD) {
132
+ if (options.LOAD === "*") {
133
+ parser.push("LOAD", "*");
134
+ }
135
+ else {
136
+ (0, generic_transformers_1.parseOptionalVariadicArgument)(parser, "LOAD", options.LOAD);
137
+ }
138
+ }
98
139
  if (options.GROUPBY) {
99
- (0, generic_transformers_1.parseOptionalVariadicArgument)(parser, 'GROUPBY', options.GROUPBY.fields);
140
+ (0, generic_transformers_1.parseOptionalVariadicArgument)(parser, "GROUPBY", options.GROUPBY.fields);
100
141
  if (options.GROUPBY.REDUCE) {
101
- parser.push('REDUCE', options.GROUPBY.REDUCE.function, options.GROUPBY.REDUCE.count.toString());
102
- parser.push(...options.GROUPBY.REDUCE.args);
142
+ const reducers = Array.isArray(options.GROUPBY.REDUCE)
143
+ ? options.GROUPBY.REDUCE
144
+ : [options.GROUPBY.REDUCE];
145
+ for (const reducer of reducers) {
146
+ (0, AGGREGATE_1.parseGroupByReducer)(parser, reducer);
147
+ }
103
148
  }
104
149
  }
105
150
  if (options.APPLY) {
106
- parser.push('APPLY', options.APPLY.expression, 'AS', options.APPLY.AS);
151
+ const applies = Array.isArray(options.APPLY)
152
+ ? options.APPLY
153
+ : [options.APPLY];
154
+ for (const apply of applies) {
155
+ parseApply(parser, apply);
156
+ }
107
157
  }
108
158
  if (options.SORTBY) {
109
- parser.push('SORTBY', options.SORTBY.count.toString());
159
+ const sortByArgsCount = options.SORTBY.fields.reduce((acc, field) => {
160
+ if (field.direction) {
161
+ return acc + 2;
162
+ }
163
+ return acc + 1;
164
+ }, 0);
165
+ parser.push("SORTBY", sortByArgsCount.toString());
110
166
  for (const sortField of options.SORTBY.fields) {
111
167
  parser.push(sortField.field);
112
168
  if (sortField.direction) {
@@ -114,27 +170,19 @@ function parseHybridOptions(parser, options) {
114
170
  }
115
171
  }
116
172
  }
173
+ if (options.NOSORT) {
174
+ parser.push("NOSORT");
175
+ }
117
176
  if (options.FILTER) {
118
- parser.push('FILTER', options.FILTER);
177
+ parser.push("FILTER", options.FILTER);
119
178
  }
120
179
  if (options.LIMIT) {
121
- parser.push('LIMIT', options.LIMIT.offset.toString(), options.LIMIT.num.toString());
122
- }
123
- (0, SEARCH_1.parseParamsArgument)(parser, options.PARAMS);
124
- if (options.EXPLAINSCORE) {
125
- parser.push('EXPLAINSCORE');
180
+ parser.push("LIMIT", options.LIMIT.offset.toString(), options.LIMIT.count.toString());
126
181
  }
182
+ const hasParams = options.PARAMS && Object.keys(options.PARAMS).length > 0;
183
+ (0, SEARCH_1.parseParamsArgument)(parser, hasParams ? options.PARAMS : undefined);
127
184
  if (options.TIMEOUT !== undefined) {
128
- parser.push('TIMEOUT', options.TIMEOUT.toString());
129
- }
130
- if (options.WITHCURSOR) {
131
- parser.push('WITHCURSOR');
132
- if (options.WITHCURSOR.COUNT !== undefined) {
133
- parser.push('COUNT', options.WITHCURSOR.COUNT.toString());
134
- }
135
- if (options.WITHCURSOR.MAXIDLE !== undefined) {
136
- parser.push('MAXIDLE', options.WITHCURSOR.MAXIDLE.toString());
137
- }
185
+ parser.push("TIMEOUT", options.TIMEOUT.toString());
138
186
  }
139
187
  }
140
188
  exports.default = {
@@ -153,71 +201,73 @@ exports.default = {
153
201
  * @param options - Hybrid search options including:
154
202
  * - SEARCH: Text search expression with optional scoring
155
203
  * - VSIM: Vector similarity expression with KNN/RANGE methods
156
- * - COMBINE: Fusion method (RRF, LINEAR, FUNCTION)
204
+ * - COMBINE: Fusion method (RRF, LINEAR)
157
205
  * - Post-processing operations: LOAD, GROUPBY, APPLY, SORTBY, FILTER
158
- * - Tunable options: LIMIT, PARAMS, EXPLAINSCORE, TIMEOUT, WITHCURSOR
206
+ * - Tunable options: LIMIT, PARAMS, TIMEOUT
159
207
  */
160
208
  parseCommand(parser, index, options) {
161
- parser.push('FT.HYBRID', index);
209
+ parser.push("FT.HYBRID", index);
162
210
  parseHybridOptions(parser, options);
163
211
  },
164
212
  transformReply: {
165
213
  2: (reply) => {
166
- // Check if this is a cursor reply: [[results...], cursorId]
167
- if (Array.isArray(reply) && reply.length === 2 && typeof reply[1] === 'number') {
168
- // This is a cursor reply
169
- const [searchResults, cursor] = reply;
170
- const transformedResults = transformHybridSearchResults(searchResults);
171
- return {
172
- ...transformedResults,
173
- cursor
174
- };
175
- }
176
- else {
177
- // Normal reply without cursor
178
- return transformHybridSearchResults(reply);
179
- }
214
+ return transformHybridSearchResults(reply);
180
215
  },
181
- 3: undefined
216
+ 3: undefined,
182
217
  },
183
- unstableResp3: true
218
+ unstableResp3: true,
184
219
  };
185
220
  function transformHybridSearchResults(reply) {
186
- // Similar structure to FT.SEARCH reply transformation
187
- const withoutDocuments = reply.length > 2 && !Array.isArray(reply[2]);
188
- const documents = [];
189
- let i = 1;
190
- while (i < reply.length) {
191
- documents.push({
192
- id: reply[i++],
193
- value: withoutDocuments ? Object.create(null) : documentValue(reply[i++])
194
- });
221
+ // FT.HYBRID returns a map-like structure as flat array:
222
+ // ['total_results', N, 'results', [...], 'warnings', [...], 'execution_time', 'X.XXX']
223
+ const replyMap = parseReplyMap(reply);
224
+ const totalResults = replyMap["total_results"] ?? 0;
225
+ const rawResults = replyMap["results"] ?? [];
226
+ const warnings = replyMap["warnings"] ?? [];
227
+ const executionTime = replyMap["execution_time"]
228
+ ? Number.parseFloat(replyMap["execution_time"])
229
+ : 0;
230
+ const results = [];
231
+ for (const result of rawResults) {
232
+ // Each result is a flat key-value array like FT.AGGREGATE: ['field1', 'value1', 'field2', 'value2', ...]
233
+ const resultMap = parseReplyMap(result);
234
+ const doc = Object.create(null);
235
+ // Add all other fields from the result
236
+ for (const [key, value] of Object.entries(resultMap)) {
237
+ if (key === "$") {
238
+ // JSON document - parse and merge
239
+ try {
240
+ Object.assign(doc, JSON.parse(value));
241
+ }
242
+ catch {
243
+ doc[key] = value;
244
+ }
245
+ }
246
+ else {
247
+ doc[key] = value;
248
+ }
249
+ }
250
+ results.push(doc);
195
251
  }
196
252
  return {
197
- total: reply[0],
198
- documents
253
+ totalResults,
254
+ executionTime,
255
+ warnings,
256
+ results,
199
257
  };
200
258
  }
201
- function documentValue(tuples) {
202
- const message = Object.create(null);
203
- if (!tuples) {
204
- return message;
205
- }
206
- let i = 0;
207
- while (i < tuples.length) {
208
- const key = tuples[i++];
209
- const value = tuples[i++];
210
- if (key === '$') { // might be a JSON reply
211
- try {
212
- Object.assign(message, JSON.parse(value));
213
- continue;
214
- }
215
- catch {
216
- // set as a regular property if not a valid JSON
217
- }
259
+ function parseReplyMap(reply) {
260
+ const map = {};
261
+ if (!Array.isArray(reply)) {
262
+ return map;
263
+ }
264
+ for (let i = 0; i < reply.length; i += 2) {
265
+ const key = reply[i];
266
+ const value = reply[i + 1];
267
+ if (typeof key === "string") {
268
+ map[key] = value;
218
269
  }
219
- message[key] = value;
220
270
  }
221
- return message;
271
+ return map;
222
272
  }
223
273
  //# sourceMappingURL=HYBRID.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HYBRID.js","sourceRoot":"","sources":["../../../lib/commands/HYBRID.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HYBRID.js","sourceRoot":"","sources":["../../../lib/commands/HYBRID.ts"],"names":[],"mappings":"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"}
@@ -271,9 +271,9 @@ declare const _default: {
271
271
  HYBRID: {
272
272
  readonly NOT_KEYED_COMMAND: true;
273
273
  readonly IS_READ_ONLY: true;
274
- readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, options?: import("./HYBRID").FtHybridOptions | undefined) => void;
274
+ readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, options: import("./HYBRID").FtHybridOptions) => void;
275
275
  readonly transformReply: {
276
- readonly 2: (reply: any) => any;
276
+ readonly 2: (reply: any) => import("./HYBRID").HybridSearchResult;
277
277
  readonly 3: () => import("@redis/client/dist/lib/RESP/types").ReplyUnion;
278
278
  };
279
279
  readonly unstableResp3: true;
@@ -281,9 +281,9 @@ declare const _default: {
281
281
  hybrid: {
282
282
  readonly NOT_KEYED_COMMAND: true;
283
283
  readonly IS_READ_ONLY: true;
284
- readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, options?: import("./HYBRID").FtHybridOptions | undefined) => void;
284
+ readonly parseCommand: (this: void, parser: import("@redis/client").CommandParser, index: import("@redis/client").RedisArgument, options: import("./HYBRID").FtHybridOptions) => void;
285
285
  readonly transformReply: {
286
- readonly 2: (reply: any) => any;
286
+ readonly 2: (reply: any) => import("./HYBRID").HybridSearchResult;
287
287
  readonly 3: () => import("@redis/client/dist/lib/RESP/types").ReplyUnion;
288
288
  };
289
289
  readonly unstableResp3: true;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redis/search",
3
- "version": "5.10.0",
3
+ "version": "5.11.0",
4
4
  "license": "MIT",
5
5
  "main": "./dist/lib/index.js",
6
6
  "types": "./dist/lib/index.d.ts",
@@ -9,12 +9,12 @@
9
9
  "!dist/tsconfig.tsbuildinfo"
10
10
  ],
11
11
  "scripts": {
12
- "test": "nyc -r text-summary -r lcov mocha -r tsx './lib/**/*.spec.ts'",
12
+ "test": "nyc -r text-summary -r lcov mocha -r tsx --reporter mocha-multi-reporters --reporter-options configFile=mocha-multi-reporter-config.json --exit './lib/**/*.spec.ts'",
13
13
  "test-sourcemap": "mocha -r ts-node/register/transpile-only './lib/**/*.spec.ts'",
14
14
  "release": "release-it"
15
15
  },
16
16
  "peerDependencies": {
17
- "@redis/client": "^5.10.0"
17
+ "@redis/client": "^5.11.0"
18
18
  },
19
19
  "devDependencies": {
20
20
  "@redis/test-utils": "*"