@@ -36,8 +36,10 @@ import { RangedFilter } from './filter/RangedFilter';
36
36
const enum WIRE_PROTOCOL_CONSTANTS {
37
37
INDEX_START_VALUE = 'sp' ,
38
38
INDEX_START_NAME = 'sn' ,
39
+ INDEX_START_IS_INCLUSIVE = 'sin' ,
39
40
INDEX_END_VALUE = 'ep' ,
40
41
INDEX_END_NAME = 'en' ,
42
+ INDEX_END_IS_INCLUSIVE = 'ein' ,
41
43
LIMIT = 'l' ,
42
44
VIEW_FROM = 'vf' ,
43
45
VIEW_FROM_LEFT = 'l' ,
@@ -53,8 +55,10 @@ const enum REST_QUERY_CONSTANTS {
53
55
PRIORITY_INDEX = '$priority' ,
54
56
VALUE_INDEX = '$value' ,
55
57
KEY_INDEX = '$key' ,
58
+ START_AFTER = 'startAfter' ,
56
59
START_AT = 'startAt' ,
57
60
END_AT = 'endAt' ,
61
+ END_BEFORE = 'endBefore' ,
58
62
LIMIT_TO_FIRST = 'limitToFirst' ,
59
63
LIMIT_TO_LAST = 'limitToLast'
60
64
}
@@ -374,18 +378,22 @@ export function queryParamsToRestQueryStringParameters(
374
378
qs [ REST_QUERY_CONSTANTS . ORDER_BY ] = stringify ( orderBy ) ;
375
379
376
380
if ( queryParams . startSet_ ) {
377
- qs [ REST_QUERY_CONSTANTS . START_AT ] = stringify ( queryParams . indexStartValue_ ) ;
381
+ const startParam = queryParams . startAfterSet_
382
+ ? REST_QUERY_CONSTANTS . START_AFTER
383
+ : REST_QUERY_CONSTANTS . START_AT ;
384
+ qs [ startParam ] = stringify ( queryParams . indexStartValue_ ) ;
378
385
if ( queryParams . startNameSet_ ) {
379
- qs [ REST_QUERY_CONSTANTS . START_AT ] +=
380
- ',' + stringify ( queryParams . indexStartName_ ) ;
386
+ qs [ startParam ] += ',' + stringify ( queryParams . indexStartName_ ) ;
381
387
}
382
388
}
383
389
384
390
if ( queryParams . endSet_ ) {
385
- qs [ REST_QUERY_CONSTANTS . END_AT ] = stringify ( queryParams . indexEndValue_ ) ;
391
+ const endParam = queryParams . endBeforeSet_
392
+ ? REST_QUERY_CONSTANTS . END_BEFORE
393
+ : REST_QUERY_CONSTANTS . END_AT ;
394
+ qs [ endParam ] = stringify ( queryParams . indexEndValue_ ) ;
386
395
if ( queryParams . endNameSet_ ) {
387
- qs [ REST_QUERY_CONSTANTS . END_AT ] +=
388
- ',' + stringify ( queryParams . indexEndName_ ) ;
396
+ qs [ endParam ] += ',' + stringify ( queryParams . indexEndName_ ) ;
389
397
}
390
398
}
391
399
@@ -411,12 +419,16 @@ export function queryParamsGetQueryObject(
411
419
obj [ WIRE_PROTOCOL_CONSTANTS . INDEX_START_NAME ] =
412
420
queryParams . indexStartName_ ;
413
421
}
422
+ obj [ WIRE_PROTOCOL_CONSTANTS . INDEX_START_IS_INCLUSIVE ] =
423
+ ! queryParams . startAfterSet_ ;
414
424
}
415
425
if ( queryParams . endSet_ ) {
416
426
obj [ WIRE_PROTOCOL_CONSTANTS . INDEX_END_VALUE ] = queryParams . indexEndValue_ ;
417
427
if ( queryParams . endNameSet_ ) {
418
428
obj [ WIRE_PROTOCOL_CONSTANTS . INDEX_END_NAME ] = queryParams . indexEndName_ ;
419
429
}
430
+ obj [ WIRE_PROTOCOL_CONSTANTS . INDEX_END_IS_INCLUSIVE ] =
431
+ ! queryParams . endBeforeSet_ ;
420
432
}
421
433
if ( queryParams . limitSet_ ) {
422
434
obj [ WIRE_PROTOCOL_CONSTANTS . LIMIT ] = queryParams . limit_ ;
0 commit comments