@@ -15,6 +15,7 @@ import { TablePattern } from './TablePattern.js';
15
15
import { TableQuerySchema } from './TableQuerySchema.js' ;
16
16
import { TableValuedFunctionSqlParameterQuery } from './TableValuedFunctionSqlParameterQuery.js' ;
17
17
import {
18
+ BucketIdTransformer ,
18
19
EvaluatedParameters ,
19
20
EvaluatedParametersResult ,
20
21
InputParameter ,
@@ -348,7 +349,11 @@ export class SqlParameterQuery {
348
349
*
349
350
* Internal function, but exposed for tests.
350
351
*/
351
- resolveBucketDescriptions ( bucketParameters : SqliteJsonRow [ ] , parameters : RequestParameters ) : BucketDescription [ ] {
352
+ resolveBucketDescriptions (
353
+ bucketParameters : SqliteJsonRow [ ] ,
354
+ parameters : RequestParameters ,
355
+ transformer : BucketIdTransformer
356
+ ) : BucketDescription [ ] {
352
357
// Filters have already been applied and gotten us the set of bucketParameters - don't attempt to filter again.
353
358
// We _do_ need to evaluate the output columns here, using a combination of precomputed bucketParameters,
354
359
// and values from token parameters.
@@ -372,7 +377,7 @@ export class SqlParameterQuery {
372
377
}
373
378
374
379
return {
375
- bucket : getBucketId ( this . descriptorName , this . bucketParameters , result ) ,
380
+ bucket : getBucketId ( this . descriptorName , this . bucketParameters , result , transformer ) ,
376
381
priority : this . priority
377
382
} ;
378
383
} )
@@ -457,7 +462,8 @@ export class SqlParameterQuery {
457
462
458
463
getBucketParameterQuerier (
459
464
requestParameters : RequestParameters ,
460
- reasons : BucketInclusionReason [ ]
465
+ reasons : BucketInclusionReason [ ] ,
466
+ transformer : BucketIdTransformer
461
467
) : BucketParameterQuerier {
462
468
const lookups = this . getLookups ( requestParameters ) ;
463
469
if ( lookups . length == 0 ) {
@@ -477,7 +483,7 @@ export class SqlParameterQuery {
477
483
parameterQueryLookups : lookups ,
478
484
queryDynamicBucketDescriptions : async ( source : ParameterLookupSource ) => {
479
485
const bucketParameters = await source . getParameterSets ( lookups ) ;
480
- return this . resolveBucketDescriptions ( bucketParameters , requestParameters ) . map ( ( bucket ) => ( {
486
+ return this . resolveBucketDescriptions ( bucketParameters , requestParameters , transformer ) . map ( ( bucket ) => ( {
481
487
...bucket ,
482
488
definition : this . descriptorName ,
483
489
inclusion_reasons : reasons
0 commit comments