11/* Copyright (C) 2026 NooBaa */
22'use strict' ;
33
4- const _ = require ( 'lodash' ) ;
5-
64const vector_utils = require ( "../util/vectors_util" ) ;
75
86class VectorSDK {
97
10-
11- /**
12- * @param {{
13- * bucketspace?: nb.BucketSpace;
14- * }} args
15- */
16- constructor ( { bucketspace } ) {
8+ constructor ( { bucketspace, req } ) {
179 this . bucketspace = bucketspace ;
10+ this . req = req ;
1811 }
1912
2013 /**
@@ -25,15 +18,15 @@ class VectorSDK {
2518 }
2619
2720 //load the vector bucket and index (if handling the op requries it)
28- async load_vector_bucket_and_index ( req , op ) {
21+ async load_vector_bucket_and_index ( op ) {
2922 if ( ! op . load_vector_bucket ) return ;
3023 const params = {
31- vector_bucket_name : req . body . vectorBucketName
24+ vector_bucket_name : this . req . body . vectorBucketName
3225 } ;
33- req . vector_bucket = await this . get_vector_bucket ( params ) ;
26+ this . req . vector_bucket = await this . get_vector_bucket ( params ) ;
3427 if ( ! op . load_vector_index ) return ;
35- params . vector_index_name = req . body . indexName ;
36- req . vector_index = await this . get_vector_index ( params ) ;
28+ params . vector_index_name = this . req . body . indexName ;
29+ this . req . vector_index = await this . get_vector_index ( params ) ;
3730 }
3831
3932 //////////////////////////
@@ -43,7 +36,6 @@ class VectorSDK {
4336 async create_vector_bucket ( params ) {
4437 const bs = this . _get_bucketspace ( ) ;
4538 await bs . create_vector_bucket ( params ) ;
46- await vector_utils . create_vector_bucket ( params ) ;
4739 }
4840
4941 async get_vector_bucket ( params ) {
@@ -54,7 +46,7 @@ class VectorSDK {
5446 async delete_vector_bucket ( params ) {
5547 const bs = this . _get_bucketspace ( ) ;
5648 await bs . delete_vector_bucket ( params ) ;
57- await vector_utils . delete_vector_bucket ( params ) ;
49+ vector_utils . delete_vector_bucket ( this . req . vector_bucket ) ;
5850 }
5951
6052 async list_vector_buckets ( params ) {
@@ -70,7 +62,7 @@ class VectorSDK {
7062 async create_vector_index ( params ) {
7163 const bs = this . _get_bucketspace ( ) ;
7264 await bs . create_vector_index ( params ) ;
73- await vector_utils . create_vector_index ( params ) ;
65+ await vector_utils . create_vector_index ( this . req . vector_bucket , this . req . vector_index , params ) ;
7466 }
7567
7668 async get_vector_index ( params ) {
@@ -86,28 +78,27 @@ class VectorSDK {
8678 async delete_vector_index ( params ) {
8779 const bs = this . _get_bucketspace ( ) ;
8880 await bs . delete_vector_index ( params ) ;
89- await vector_utils . delete_vector_index ( params ) ;
81+ await vector_utils . delete_vector_index ( this . req . vector_bucket , this . req . vector_index ) ;
9082 }
9183
9284 //////////////////////////
9385 // VECTORS //
9486 //////////////////////////
9587
9688 async put_vectors ( params ) {
97- params . vector_index = await this . get_vector_index ( _ . pick ( params , 'vector_bucket_name' , 'vector_index_name' ) ) ;
98- return await vector_utils . put_vectors ( params ) ;
89+ return await vector_utils . put_vectors ( this . req . vector_bucket , this . req . vector_index , params . vectors ) ;
9990 }
10091
10192 async list_vectors ( params ) {
102- return await vector_utils . list_vectors ( params ) ;
93+ return await vector_utils . list_vectors ( this . req . vector_bucket , this . req . vector_index , params ) ;
10394 }
10495
10596 async delete_vectors ( params ) {
106- await vector_utils . delete_vectors ( params ) ;
97+ await vector_utils . delete_vectors ( this . req . vector_bucket , this . req . vector_index , params . keys ) ;
10798 }
10899
109100 async query_vectors ( params ) {
110- return await vector_utils . query_vectors ( params ) ;
101+ return await vector_utils . query_vectors ( this . req . vector_bucket , this . req . vector_index , params ) ;
111102 }
112103
113104 //////////////////////////////
0 commit comments