endee 1.0.7 → 1.0.8-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,4 @@
1
- /**
2
- * Main Endee client for Endee-DB
3
- */
4
- import { Index } from './indexClient.js';
1
+ import { Index } from './index.class.js';
5
2
  import { type CreateIndexOptions } from './types/index.js';
6
3
  export declare class Endee {
7
4
  private token;
@@ -9,10 +6,9 @@ export declare class Endee {
9
6
  private version;
10
7
  constructor(token?: string | null);
11
8
  setBaseUrl(url: string): string;
12
- generateKey(): string;
13
9
  createIndex(options: CreateIndexOptions): Promise<string>;
14
10
  listIndexes(): Promise<unknown>;
15
11
  deleteIndex(name: string): Promise<string>;
16
- getIndex(name: string, key?: string | null): Promise<Index>;
12
+ getIndex(name: string): Promise<Index>;
17
13
  }
18
- //# sourceMappingURL=endee.d.ts.map
14
+ //# sourceMappingURL=endee.class.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endee.class.d.ts","sourceRoot":"","sources":["../src/endee.class.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAa,KAAK,kBAAkB,EAAkB,MAAM,kBAAkB,CAAC;AAEtF,qBAAa,KAAK;IAChB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;gBAEZ,KAAK,GAAE,MAAM,GAAG,IAAW;IAavC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAKzB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAkEzD,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAgB/B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAuB1C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;CAiC7C"}
@@ -2,21 +2,19 @@
2
2
  * Main Endee client for Endee-DB
3
3
  */
4
4
  import axios from 'axios';
5
- import crypto from 'crypto';
6
5
  import { raiseException } from './exceptions.js';
7
- import { Index } from './indexClient.js';
8
- import { isValidIndexName, } from './utils.js';
6
+ import { Index } from './index.class.js';
7
+ import { isValidIndexName } from './utils.js';
9
8
  import { Precision } from './types/index.js';
10
- import { getChecksum } from './crypto.js';
11
9
  export class Endee {
12
10
  token;
13
11
  baseUrl;
14
12
  version;
15
13
  constructor(token = null) {
16
14
  this.token = token;
17
- this.baseUrl = "http://127.0.0.1:8080/api/v1";
15
+ this.baseUrl = 'http://127.0.0.1:8080/api/v1';
18
16
  if (token) {
19
- const tokenParts = token.split(":");
17
+ const tokenParts = token.split(':');
20
18
  if (tokenParts.length > 2) {
21
19
  this.baseUrl = `https://${tokenParts[2]}.endee.io/api/v1`;
22
20
  this.token = `${tokenParts[0]}:${tokenParts[1]}`;
@@ -28,27 +26,24 @@ export class Endee {
28
26
  this.baseUrl = url;
29
27
  return url;
30
28
  }
31
- generateKey() {
32
- // Generate a random hex key of 32 bytes (256 bit)
33
- const key = crypto.randomBytes(32).toString('hex');
34
- console.log("Store this encryption key in a secure location. Loss of the key will result in the irreversible loss of associated vector data.\nKey: ", key);
35
- return key;
36
- }
37
29
  async createIndex(options) {
38
- const { name, dimension, spaceType = 'cosine', M = 16, efCon = 128, key = null, precision = Precision.INT8D, version = null, } = options;
30
+ const { name, dimension, spaceType = 'cosine', M = 16, efCon = 128, precision = Precision.INT8D, version = null, sparseDimension = null, } = options;
39
31
  if (!isValidIndexName(name)) {
40
- throw new Error("Invalid index name. Index name must be alphanumeric and can contain underscores and less than 48 characters");
32
+ throw new Error('Invalid index name. Index name must be alphanumeric and can contain underscores and less than 48 characters');
41
33
  }
42
34
  if (dimension > 10000) {
43
- throw new Error("Dimension cannot be greater than 10000");
35
+ throw new Error('Dimension cannot be greater than 10000');
36
+ }
37
+ if (sparseDimension && sparseDimension < 0) {
38
+ throw new Error('Sparse dimension cannot be less than 0');
44
39
  }
45
40
  const normalizedSpaceType = spaceType.toLowerCase();
46
- if (!["cosine", "l2", "ip"].includes(normalizedSpaceType)) {
41
+ if (!['cosine', 'l2', 'ip'].includes(normalizedSpaceType)) {
47
42
  throw new Error(`Invalid space type: ${spaceType}`);
48
43
  }
49
44
  const headers = {
50
45
  Authorization: `${this.token}`,
51
- "Content-Type": "application/json",
46
+ 'Content-Type': 'application/json',
52
47
  };
53
48
  const data = {
54
49
  index_name: name,
@@ -56,10 +51,13 @@ export class Endee {
56
51
  space_type: normalizedSpaceType,
57
52
  M: M,
58
53
  ef_con: efCon,
59
- checksum: getChecksum(key),
54
+ checksum: -1,
60
55
  precision: precision,
61
56
  version: version,
62
57
  };
58
+ if (sparseDimension) {
59
+ data.sparse_dim = sparseDimension;
60
+ }
63
61
  if (version !== undefined) {
64
62
  data.version = version;
65
63
  }
@@ -80,7 +78,7 @@ export class Endee {
80
78
  console.error(response.data);
81
79
  raiseException(response.status, response.data);
82
80
  }
83
- return "Index created successfully";
81
+ return 'Index created successfully';
84
82
  }
85
83
  async listIndexes() {
86
84
  const headers = {
@@ -121,10 +119,10 @@ export class Endee {
121
119
  }
122
120
  return `Index ${name} deleted successfully`;
123
121
  }
124
- async getIndex(name, key = null) {
122
+ async getIndex(name) {
125
123
  const headers = {
126
124
  Authorization: `${this.token}`,
127
- "Content-Type": "application/json",
125
+ 'Content-Type': 'application/json',
128
126
  };
129
127
  let response;
130
128
  try {
@@ -139,13 +137,19 @@ export class Endee {
139
137
  throw err;
140
138
  }
141
139
  const data = response.data;
142
- // Raise error if checksum does not match
143
- const checksum = getChecksum(key);
144
- if (checksum !== data.checksum) {
145
- raiseException(403, "Checksum does not match. Please check the key.");
146
- }
147
- const idx = new Index(name, key, this.token, this.baseUrl, this.version, data);
140
+ const indexInfo = {
141
+ name: data.index_name,
142
+ spaceType: data.space_type,
143
+ dimension: data.dimension,
144
+ total_elements: data.total_elements,
145
+ precision: data.precision,
146
+ M: data.M,
147
+ checksum: data.checksum,
148
+ version: data.version,
149
+ sparseDimension: data.sparse_dim,
150
+ };
151
+ const idx = new Index(name, this.token, this.baseUrl, this.version, indexInfo);
148
152
  return idx;
149
153
  }
150
154
  }
151
- //# sourceMappingURL=endee.js.map
155
+ //# sourceMappingURL=endee.class.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endee.class.js","sourceRoot":"","sources":["../src/endee.class.ts"],"names":[],"mappings":"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"}
@@ -2,58 +2,58 @@
2
2
  * Exception classes for Endee-DB
3
3
  */
4
4
  export class EndeeException extends Error {
5
- constructor(message = "An error occurred in Endee-DB") {
5
+ constructor(message = 'An error occurred in Endee-DB') {
6
6
  super(message);
7
- this.name = "EndeeException";
7
+ this.name = 'EndeeException';
8
8
  Object.setPrototypeOf(this, EndeeException.prototype);
9
9
  }
10
10
  }
11
11
  export class APIException extends EndeeException {
12
12
  constructor(message) {
13
13
  super(`API Error: ${message}`);
14
- this.name = "APIException";
14
+ this.name = 'APIException';
15
15
  Object.setPrototypeOf(this, APIException.prototype);
16
16
  }
17
17
  }
18
18
  export class ServerException extends EndeeException {
19
19
  constructor(message) {
20
20
  super(`Server Busy: ${message}`);
21
- this.name = "ServerException";
21
+ this.name = 'ServerException';
22
22
  Object.setPrototypeOf(this, ServerException.prototype);
23
23
  }
24
24
  }
25
25
  export class ForbiddenException extends EndeeException {
26
26
  constructor(message) {
27
27
  super(`Forbidden: ${message}`);
28
- this.name = "ForbiddenException";
28
+ this.name = 'ForbiddenException';
29
29
  Object.setPrototypeOf(this, ForbiddenException.prototype);
30
30
  }
31
31
  }
32
32
  export class ConflictException extends EndeeException {
33
33
  constructor(message) {
34
34
  super(`Conflict: ${message}`);
35
- this.name = "ConflictException";
35
+ this.name = 'ConflictException';
36
36
  Object.setPrototypeOf(this, ConflictException.prototype);
37
37
  }
38
38
  }
39
39
  export class NotFoundException extends EndeeException {
40
40
  constructor(message) {
41
41
  super(`Resource Not Found: ${message}`);
42
- this.name = "NotFoundException";
42
+ this.name = 'NotFoundException';
43
43
  Object.setPrototypeOf(this, NotFoundException.prototype);
44
44
  }
45
45
  }
46
46
  export class AuthenticationException extends EndeeException {
47
47
  constructor(message) {
48
48
  super(`Authentication Error: ${message}`);
49
- this.name = "AuthenticationException";
49
+ this.name = 'AuthenticationException';
50
50
  Object.setPrototypeOf(this, AuthenticationException.prototype);
51
51
  }
52
52
  }
53
53
  export class SubscriptionException extends EndeeException {
54
54
  constructor(message) {
55
55
  super(`Subscription Error: ${message}`);
56
- this.name = "SubscriptionException";
56
+ this.name = 'SubscriptionException';
57
57
  Object.setPrototypeOf(this, SubscriptionException.prototype);
58
58
  }
59
59
  }
@@ -62,17 +62,17 @@ export function raiseException(code, text) {
62
62
  try {
63
63
  if (typeof text === 'string') {
64
64
  const parsed = JSON.parse(text);
65
- message = parsed.error || "Unknown error";
65
+ message = parsed.error || 'Unknown error';
66
66
  }
67
67
  else if (text && typeof text === 'object' && 'error' in text) {
68
- message = String(text.error) || "Unknown error";
68
+ message = String(text.error) || 'Unknown error';
69
69
  }
70
70
  else {
71
- message = String(text) || "Unknown error";
71
+ message = String(text) || 'Unknown error';
72
72
  }
73
73
  }
74
74
  catch {
75
- message = String(text) || "Unknown error";
75
+ message = String(text) || 'Unknown error';
76
76
  }
77
77
  if (code === 400) {
78
78
  throw new APIException(message);
@@ -93,10 +93,10 @@ export function raiseException(code, text) {
93
93
  throw new ConflictException(message);
94
94
  }
95
95
  else if (code >= 500) {
96
- throw new ServerException("Server is busy. Please try again in sometime");
96
+ throw new ServerException('Server is busy. Please try again in sometime');
97
97
  }
98
98
  else {
99
- throw new APIException("Unknown Error. Please try again in sometime");
99
+ throw new APIException('Unknown Error. Please try again in sometime');
100
100
  }
101
101
  }
102
102
  //# sourceMappingURL=exceptions.js.map
@@ -1,31 +1,26 @@
1
1
  /**
2
2
  * Index client for Endee-DB
3
3
  */
4
- import { VectorItem, QueryOptions, QueryResult, IndexInfo, IndexDescription } from "./types/index.js";
4
+ import { VectorItem, QueryOptions, QueryResult, IndexInfo, IndexDescription, VectorInfo } from './types/index.js';
5
5
  export declare class Index {
6
6
  private name;
7
- private key;
8
7
  private token;
9
8
  private url;
10
9
  private count;
11
- private space_type;
10
+ private spaceType;
12
11
  private dimension;
13
12
  private precision;
14
13
  private M;
15
- constructor(name: string, key: string | null, token: string, url: string, _version?: number, params?: Partial<IndexInfo>);
14
+ private sparseDimension;
15
+ constructor(name: string, token: string, url: string, _version?: number, params?: Partial<IndexInfo>);
16
16
  toString(): string;
17
+ private isHybrid;
17
18
  private _normalizeVector;
18
19
  upsert(inputArray: VectorItem[]): Promise<string>;
19
20
  query(options: QueryOptions): Promise<QueryResult[]>;
20
21
  deleteVector(id: string): Promise<string>;
21
- deleteWithFilter(filter: Record<string, unknown>): Promise<unknown>;
22
- getVector(id: string): Promise<{
23
- id: string;
24
- meta: Record<string, unknown>;
25
- filter: string;
26
- norm: number;
27
- vector: number[];
28
- }>;
22
+ deleteWithFilter(filter: Array<Record<string, unknown>>): Promise<unknown>;
23
+ getVector(id: string): Promise<VectorInfo>;
29
24
  describe(): IndexDescription;
30
25
  }
31
- //# sourceMappingURL=indexClient.d.ts.map
26
+ //# sourceMappingURL=index.class.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.class.d.ts","sourceRoot":"","sources":["../src/index.class.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EACL,UAAU,EACV,YAAY,EACZ,WAAW,EACX,SAAS,EACT,gBAAgB,EAGhB,UAAU,EACX,MAAM,kBAAkB,CAAC;AAE1B,qBAAa,KAAK;IAChB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,CAAC,CAAS;IAClB,OAAO,CAAC,eAAe,CAAS;gBAG9B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,QAAQ,SAAI,EACZ,MAAM,GAAE,OAAO,CAAC,SAAS,CAAM;IAajC,QAAQ,IAAI,MAAM;IAIlB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,gBAAgB;IAelB,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IA6EjD,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAuHpD,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBzC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAqB1E,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAwChD,QAAQ,IAAI,gBAAgB;CAY7B"}
@@ -1,40 +1,43 @@
1
1
  /**
2
2
  * Index client for Endee-DB
3
3
  */
4
- import axios from "axios";
5
- import { encode, decode } from "@msgpack/msgpack";
6
- import { jsonZip, jsonUnzip } from "./crypto.js";
7
- import { raiseException } from "./exceptions.js";
8
- import { Precision } from "./types/index.js";
4
+ import axios from 'axios';
5
+ import { encode, decode } from '@msgpack/msgpack';
6
+ import { jsonZip, jsonUnzip } from './crypto.js';
7
+ import { raiseException } from './exceptions.js';
8
+ import { Precision, } from './types/index.js';
9
9
  export class Index {
10
10
  name;
11
- key;
12
11
  token;
13
12
  url;
14
13
  count;
15
- space_type;
14
+ spaceType;
16
15
  dimension;
17
16
  precision;
18
17
  M;
19
- constructor(name, key, token, url, _version = 1, params = {}) {
18
+ sparseDimension;
19
+ constructor(name, token, url, _version = 1, params = {}) {
20
20
  this.name = name;
21
- this.key = key;
22
21
  this.token = token;
23
22
  this.url = url;
24
23
  this.count = params.total_elements || 0;
25
- this.space_type = params.space_type || "cosine";
24
+ this.spaceType = params.spaceType || 'cosine';
26
25
  this.dimension = params.dimension || 0;
27
26
  this.precision = params.precision || Precision.INT8D;
28
27
  this.M = params.M || 16;
28
+ this.sparseDimension = params.sparseDimension || 0;
29
29
  }
30
30
  toString() {
31
31
  return this.name;
32
32
  }
33
+ isHybrid() {
34
+ return this.sparseDimension > 0;
35
+ }
33
36
  _normalizeVector(vector) {
34
37
  if (vector.length !== this.dimension) {
35
38
  throw new Error(`Vector dimension mismatch: expected ${this.dimension}, got ${vector.length}`);
36
39
  }
37
- if (this.space_type !== "cosine") {
40
+ if (this.spaceType !== 'cosine') {
38
41
  return [vector, 1.0];
39
42
  }
40
43
  const norm = Math.sqrt(vector.reduce((sum, v) => sum + v * v, 0));
@@ -45,28 +48,52 @@ export class Index {
45
48
  }
46
49
  async upsert(inputArray) {
47
50
  if (inputArray.length > 1000) {
48
- throw new Error("Cannot insert more than 1000 vectors at a time");
51
+ throw new Error('Cannot insert more than 1000 vectors at a time');
49
52
  }
50
53
  const vectorBatch = [];
51
54
  for (const item of inputArray) {
52
55
  const [vector, norm] = this._normalizeVector(item.vector);
53
- const metaData = jsonZip(item.meta || {}, this.key);
56
+ const metaData = jsonZip(item.meta || {});
57
+ const sparseIndices = item.sparseIndices || [];
58
+ const sparseValues = item.sparseValues || [];
59
+ if (!this.isHybrid() && (sparseIndices.length > 0 || sparseValues.length > 0)) {
60
+ throw new Error('Cannot insert sparse data into a dense-only index. Create index with sparseDimension > 0 for hybrid support.');
61
+ }
62
+ if (this.isHybrid()) {
63
+ if (sparseIndices.length == 0 || sparseValues.length == 0) {
64
+ throw new Error('Both sparse_indices and sparse_values must be provided for hybrid vectors.');
65
+ }
66
+ if (sparseIndices.length !== sparseValues.length) {
67
+ throw new Error(`sparseIndices and sparseValues must have the same length. Got ${sparseIndices.length} length indices and ${sparseValues.length} length values.`);
68
+ }
69
+ for (const idx of sparseIndices) {
70
+ if (idx < 0 || idx >= this.sparseDimension) {
71
+ throw new Error(`Sparse index ${idx} is out of bounds. Must be in range [0,${this.sparseDimension}).`);
72
+ }
73
+ }
74
+ }
54
75
  const vectorObj = [
55
- String(item.id || ""),
76
+ String(item.id || ''),
56
77
  metaData,
57
78
  JSON.stringify(item.filter || {}),
58
79
  norm,
59
80
  vector,
60
81
  ];
82
+ if (this.isHybrid()) {
83
+ vectorObj.push(sparseIndices, sparseValues);
84
+ }
61
85
  vectorBatch.push(vectorObj);
62
86
  }
63
87
  const serializedData = encode(vectorBatch);
64
88
  const headers = {
65
89
  Authorization: this.token,
66
- "Content-Type": "application/msgpack",
90
+ 'Content-Type': 'application/msgpack',
67
91
  };
68
92
  try {
69
- await axios.post(`${this.url}/index/${this.name}/vector/insert`, serializedData, { headers, responseType: "arraybuffer" });
93
+ await axios.post(`${this.url}/index/${this.name}/vector/insert`, serializedData, {
94
+ headers,
95
+ responseType: 'arraybuffer',
96
+ });
70
97
  }
71
98
  catch (err) {
72
99
  if (axios.isAxiosError(err) && err.response) {
@@ -74,33 +101,55 @@ export class Index {
74
101
  }
75
102
  throw err;
76
103
  }
77
- return "Vectors inserted successfully";
104
+ return 'Vectors inserted successfully';
78
105
  }
79
106
  async query(options) {
80
- const { vector, topK = 10, filter = null, ef = 128, includeVectors = false, } = options;
81
- if (!vector)
82
- throw new Error("vector is required");
83
- if (topK > 200)
84
- throw new Error("top_k cannot be greater than 200");
107
+ const { vector = null, topK = 10, filter = null, ef = 128, includeVectors = false, sparseIndices = null, sparseValues = null, } = options;
108
+ if (topK > 512 || topK < 0)
109
+ throw new Error('top_k cannot be greater than 512 and less than 0');
85
110
  if (ef > 1024)
86
- throw new Error("ef search cannot be greater than 1024");
87
- const [queryVector] = this._normalizeVector(vector);
111
+ throw new Error('ef search cannot be greater than 1024');
112
+ const hasSparse = sparseIndices && sparseIndices.length > 0 && sparseValues && sparseIndices.length > 0;
113
+ let hasDense = false;
114
+ if (vector)
115
+ hasDense = true;
116
+ if (!hasDense && !hasSparse) {
117
+ throw new Error("At least one of 'vector' or 'sparseIndices'/'sparseValues' must be provided.");
118
+ }
119
+ if (hasSparse && !this.isHybrid()) {
120
+ throw new Error('Cannot perform sparse search on a dense-only index. Create index with sparseDimension > 0 for hybrid support.');
121
+ }
122
+ if (hasSparse) {
123
+ if (sparseIndices.length != sparseValues.length) {
124
+ throw new Error(`sparseIndices and sparseValues must have the same length. Got ${sparseIndices.length} length indices and ${sparseValues.length} length values.`);
125
+ }
126
+ }
88
127
  const headers = {
89
128
  Authorization: this.token,
90
- "Content-Type": "application/json",
129
+ 'Content-Type': 'application/json',
91
130
  };
92
131
  const data = {
93
- vector: queryVector,
94
132
  k: topK,
95
133
  ef: ef,
96
134
  include_vectors: includeVectors,
97
135
  };
136
+ if (vector) {
137
+ const [queryVector] = this._normalizeVector(vector);
138
+ data.vector = queryVector;
139
+ }
140
+ if (hasSparse) {
141
+ data.sparse_indices = sparseIndices;
142
+ data.sparse_values = sparseValues;
143
+ }
98
144
  if (filter) {
99
145
  data.filter = JSON.stringify(filter);
100
146
  }
101
147
  let response;
102
148
  try {
103
- response = await axios.post(`${this.url}/index/${this.name}/search`, data, { headers, responseType: "arraybuffer" });
149
+ response = await axios.post(`${this.url}/index/${this.name}/search`, data, {
150
+ headers,
151
+ responseType: 'arraybuffer',
152
+ });
104
153
  }
105
154
  catch (err) {
106
155
  if (axios.isAxiosError(err) && err.response) {
@@ -110,7 +159,7 @@ export class Index {
110
159
  }
111
160
  const decoded = decode(new Uint8Array(response.data));
112
161
  const results = Array.isArray(decoded) ? decoded : [];
113
- let processedResults = [];
162
+ const processedResults = [];
114
163
  for (const result of results) {
115
164
  const similarity = result[0];
116
165
  const vectorId = result[1];
@@ -119,7 +168,7 @@ export class Index {
119
168
  const normValue = result[4];
120
169
  const vectorData = result.length > 5 ? result[5] : undefined;
121
170
  let meta = {};
122
- meta = jsonUnzip(metaData, this.key);
171
+ meta = jsonUnzip(metaData);
123
172
  const processedResult = {
124
173
  id: vectorId,
125
174
  similarity: similarity,
@@ -148,7 +197,9 @@ export class Index {
148
197
  };
149
198
  let response;
150
199
  try {
151
- response = await axios.delete(`${this.url}/index/${this.name}/vector/${id}/delete`, { headers });
200
+ response = await axios.delete(`${this.url}/index/${this.name}/vector/${id}/delete`, {
201
+ headers,
202
+ });
152
203
  }
153
204
  catch (err) {
154
205
  if (axios.isAxiosError(err) && err.response) {
@@ -156,18 +207,21 @@ export class Index {
156
207
  }
157
208
  throw err;
158
209
  }
159
- return response.data + " rows deleted";
210
+ return response.data + ' rows deleted';
160
211
  }
161
212
  // Need to test this function first.
162
213
  async deleteWithFilter(filter) {
163
214
  const headers = {
164
215
  Authorization: this.token,
165
- "Content-Type": "application/json",
216
+ 'Content-Type': 'application/json',
166
217
  };
167
218
  const data = { filter };
168
219
  let response;
169
220
  try {
170
- response = await axios.delete(`${this.url}/index/${this.name}/vectors/delete`, { headers, data });
221
+ response = await axios.delete(`${this.url}/index/${this.name}/vectors/delete`, {
222
+ headers,
223
+ data,
224
+ });
171
225
  }
172
226
  catch (err) {
173
227
  if (axios.isAxiosError(err) && err.response) {
@@ -180,11 +234,11 @@ export class Index {
180
234
  async getVector(id) {
181
235
  const headers = {
182
236
  Authorization: this.token,
183
- "Content-Type": "application/json",
237
+ 'Content-Type': 'application/json',
184
238
  };
185
239
  let response;
186
240
  try {
187
- response = await axios.post(`${this.url}/index/${this.name}/vector/get`, { id }, { headers, responseType: "arraybuffer" });
241
+ response = await axios.post(`${this.url}/index/${this.name}/vector/get`, { id }, { headers, responseType: 'arraybuffer' });
188
242
  }
189
243
  catch (err) {
190
244
  if (axios.isAxiosError(err) && err.response) {
@@ -193,12 +247,13 @@ export class Index {
193
247
  throw err;
194
248
  }
195
249
  const vectorObj = decode(new Uint8Array(response.data));
196
- const meta = jsonUnzip(vectorObj[1], this.key);
250
+ const meta = jsonUnzip(vectorObj[1]);
197
251
  const vector = Array.from(vectorObj[4]);
252
+ const parsedFilter = JSON.parse(vectorObj[2]);
198
253
  return {
199
254
  id: vectorObj[0],
200
255
  meta: meta,
201
- filter: vectorObj[2],
256
+ filter: parsedFilter,
202
257
  norm: vectorObj[3],
203
258
  vector: vector,
204
259
  };
@@ -206,12 +261,14 @@ export class Index {
206
261
  describe() {
207
262
  return {
208
263
  name: this.name,
209
- space_type: this.space_type,
264
+ spaceType: this.spaceType,
210
265
  dimension: this.dimension,
266
+ sparseDimension: this.sparseDimension,
267
+ isHybrid: this.isHybrid(),
211
268
  count: this.count,
212
269
  precision: this.precision,
213
270
  M: this.M,
214
271
  };
215
272
  }
216
273
  }
217
- //# sourceMappingURL=indexClient.js.map
274
+ //# sourceMappingURL=index.class.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.class.js","sourceRoot":"","sources":["../src/index.class.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * Main export file for Endee-DB
3
3
  */
4
- export { Endee } from './endee.js';
5
- export { Index } from './indexClient.js';
4
+ export { Endee } from './endee.class.js';
5
+ export { Index } from './index.class.js';
6
6
  export * from './exceptions.js';
7
7
  export * from './types/index.js';
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}