@@ -19,7 +19,6 @@ import {
1919 Constant ,
2020 Expression ,
2121 FunctionExpression ,
22- AggregateFunction ,
2322 ListOfExprs ,
2423 BooleanConstant
2524} from '../lite-api/expressions' ;
@@ -29,6 +28,11 @@ import {
2928 DOCUMENT_KEY_NAME ,
3029 UPDATE_TIME_NAME
3130} from '../model/path' ;
31+ import {
32+ getLocalWriteTime ,
33+ getPreviousValue ,
34+ isServerTimestamp
35+ } from '../model/server_timestamps' ;
3236import {
3337 FALSE_VALUE ,
3438 getVectorValue ,
@@ -58,11 +62,6 @@ import { objectSize } from '../util/obj';
5862import { isNegativeZero } from '../util/types' ;
5963
6064import { EvaluationContext , PipelineInputOutput } from './pipeline_run' ;
61- import {
62- getLocalWriteTime ,
63- getPreviousValue ,
64- isServerTimestamp
65- } from '../model/server_timestamps' ;
6665import { SnapshotVersion } from './snapshot_version' ;
6766
6867export type EvaluateResultType =
@@ -2380,14 +2379,14 @@ export class CoreCosineDistance extends DistanceBase {
23802379 ) : number | undefined {
23812380 const values1 = vec1 ?. values ?? [ ] ;
23822381 const values2 = vec2 ?. values ?? [ ] ;
2383- if ( values1 . length === 0 ) return undefined ; // Distance undefined for empty vectors
2382+ if ( values1 . length === 0 ) { return undefined ; } // Distance undefined for empty vectors
23842383
23852384 let dotProduct = 0 ;
23862385 let magnitude1 = 0 ;
23872386 let magnitude2 = 0 ;
23882387 for ( let i = 0 ; i < values1 . length ; i ++ ) {
23892388 // Error if any element is not a number
2390- if ( ! isNumber ( values1 [ i ] ) || ! isNumber ( values2 [ i ] ) ) return undefined ;
2389+ if ( ! isNumber ( values1 [ i ] ) || ! isNumber ( values2 [ i ] ) ) { return undefined ; }
23912390 const val1 = asDouble ( values1 [ i ] as { doubleValue : number | string } ) ;
23922391 const val2 = asDouble ( values2 [ i ] as { doubleValue : number | string } ) ;
23932392 dotProduct += val1 * val2 ;
@@ -2417,12 +2416,12 @@ export class CoreDotProduct extends DistanceBase {
24172416 ) : number | undefined {
24182417 const values1 = vec1 ?. values ?? [ ] ;
24192418 const values2 = vec2 ?. values ?? [ ] ;
2420- if ( values1 . length === 0 ) return 0.0 ; // Dot product of empty vectors is 0
2419+ if ( values1 . length === 0 ) { return 0.0 ; } // Dot product of empty vectors is 0
24212420
24222421 let dotProduct = 0 ;
24232422 for ( let i = 0 ; i < values1 . length ; i ++ ) {
24242423 // Error if any element is not a number
2425- if ( ! isNumber ( values1 [ i ] ) || ! isNumber ( values2 [ i ] ) ) return undefined ;
2424+ if ( ! isNumber ( values1 [ i ] ) || ! isNumber ( values2 [ i ] ) ) { return undefined ; }
24262425 const val1 = asDouble ( values1 [ i ] as { doubleValue : number | string } ) ;
24272426 const val2 = asDouble ( values2 [ i ] as { doubleValue : number | string } ) ;
24282427 dotProduct += val1 * val2 ;
@@ -2443,12 +2442,12 @@ export class CoreEuclideanDistance extends DistanceBase {
24432442 ) : number | undefined {
24442443 const values1 = vec1 ?. values ?? [ ] ;
24452444 const values2 = vec2 ?. values ?? [ ] ;
2446- if ( values1 . length === 0 ) return 0.0 ; // Distance between empty vectors is 0
2445+ if ( values1 . length === 0 ) { return 0.0 ; } // Distance between empty vectors is 0
24472446
24482447 let euclideanDistanceSq = 0 ;
24492448 for ( let i = 0 ; i < values1 . length ; i ++ ) {
24502449 // Error if any element is not a number
2451- if ( ! isNumber ( values1 [ i ] ) || ! isNumber ( values2 [ i ] ) ) return undefined ;
2450+ if ( ! isNumber ( values1 [ i ] ) || ! isNumber ( values2 [ i ] ) ) { return undefined ; }
24522451 const val1 = asDouble ( values1 [ i ] as { doubleValue : number | string } ) ;
24532452 const val2 = asDouble ( values2 [ i ] as { doubleValue : number | string } ) ;
24542453 euclideanDistanceSq += Math . pow ( val1 - val2 , 2 ) ;
@@ -2537,8 +2536,8 @@ function isTimestampInBounds(seconds: number, nanos: number) {
25372536 return false ;
25382537 }
25392538 // Additional check for min/max boundaries
2540- if ( sBig === TIMESTAMP_MIN_SECONDS && nanos !== 0 ) return false ; // Min timestamp has 0 nanos
2541- if ( sBig === TIMESTAMP_MAX_SECONDS && nanos > 999_999_999 ) return false ; // Max timestamp allows up to 999_999_999 nanos
2539+ if ( sBig === TIMESTAMP_MIN_SECONDS && nanos !== 0 ) { return false ; } // Min timestamp has 0 nanos
2540+ if ( sBig === TIMESTAMP_MAX_SECONDS && nanos > 999_999_999 ) { return false ; } // Max timestamp allows up to 999_999_999 nanos
25422541
25432542 return true ;
25442543}
0 commit comments