@@ -29,6 +29,7 @@ import { Script } from '@_types/Scripting'
29
29
import { QueryBase } from './abstractions'
30
30
import { Operator } from './Operator'
31
31
import { DateMath , TimeZone } from '@_types/Time'
32
+ import { FlagsEnum } from '@spec_utils/FlagsEnum'
32
33
33
34
/**
34
35
* @shortcut_property query
@@ -271,24 +272,23 @@ export class QueryStringQuery extends QueryBase {
271
272
/**
272
273
* Query flags can be either a single flag or a combination of flags, e.g. `OR|AND|PREFIX`
273
274
* @doc_id supported-flags
274
- * @codegen_names single, multiple
275
275
*/
276
- export type SimpleQueryStringFlags = SimpleQueryStringFlag | string
276
+ export type SimpleQueryStringFlags = FlagsEnum < SimpleQueryStringFlag [ ] >
277
277
278
278
export enum SimpleQueryStringFlag {
279
- NONE = 1 ,
280
- AND = 2 ,
281
- OR = 4 ,
282
- NOT = 8 ,
283
- PREFIX = 16 ,
284
- PHRASE = 32 ,
285
- PRECEDENCE = 64 ,
286
- ESCAPE = 128 ,
287
- WHITESPACE = 256 ,
288
- FUZZY = 512 ,
289
- NEAR = 1024 ,
290
- SLOP = 2048 ,
291
- ALL = 4096
279
+ NONE = 0 ,
280
+ AND = 1 << 0 ,
281
+ NOT = 1 << 1 ,
282
+ OR = 1 << 2 ,
283
+ PREFIX = 1 << 3 ,
284
+ PHRASE = 1 << 4 ,
285
+ PRECEDENCE = 1 << 5 ,
286
+ ESCAPE = 1 << 5 ,
287
+ WHITESPACE = 1 << 6 ,
288
+ FUZZY = 1 << 7 ,
289
+ NEAR = 1 << 8 ,
290
+ SLOP = 1 << 8 , // NEAR and SLOP are synonymous
291
+ ALL = - 1
292
292
}
293
293
294
294
export class SimpleQueryStringQuery extends QueryBase {
@@ -300,6 +300,7 @@ export class SimpleQueryStringQuery extends QueryBase {
300
300
/** @server_default 'or' */
301
301
default_operator ?: Operator
302
302
fields ?: Field [ ]
303
+ /** @server_default 'ALL' */
303
304
flags ?: SimpleQueryStringFlags
304
305
fuzzy_max_expansions ?: integer
305
306
fuzzy_prefix_length ?: integer
0 commit comments