endee 1.0.0-beta.1
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.
- package/README.md +163 -0
- package/dist/crypto.d.ts +6 -0
- package/dist/crypto.d.ts.map +1 -0
- package/dist/crypto.js +35 -0
- package/dist/crypto.js.map +1 -0
- package/dist/endee.d.ts +16 -0
- package/dist/endee.d.ts.map +1 -0
- package/dist/endee.js +131 -0
- package/dist/endee.js.map +1 -0
- package/dist/exceptions.d.ts +29 -0
- package/dist/exceptions.d.ts.map +1 -0
- package/dist/exceptions.js +102 -0
- package/dist/exceptions.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/indexClient.d.ts +30 -0
- package/dist/indexClient.d.ts.map +1 -0
- package/dist/indexClient.js +221 -0
- package/dist/indexClient.js.map +1 -0
- package/dist/types/index.d.ts +55 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +5 -0
- package/dist/types/index.js.map +1 -0
- package/dist/userClient.d.ts +21 -0
- package/dist/userClient.d.ts.map +1 -0
- package/dist/userClient.js +104 -0
- package/dist/userClient.js.map +1 -0
- package/dist/utils.d.ts +27 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +198 -0
- package/dist/utils.js.map +1 -0
- package/package.json +43 -0
package/dist/utils.js
ADDED
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for Endee-DB
|
|
3
|
+
*/
|
|
4
|
+
export function isValidIndexName(indexName) {
|
|
5
|
+
const pattern = /^[a-zA-Z0-9_]+$/;
|
|
6
|
+
return pattern.test(indexName) && indexName.length > 0 && indexName.length <= 48;
|
|
7
|
+
}
|
|
8
|
+
export function validateString(value, name, required = true) {
|
|
9
|
+
if (required && (value === null || value === undefined)) {
|
|
10
|
+
throw new Error(`${name} is required`);
|
|
11
|
+
}
|
|
12
|
+
if (value !== null && value !== undefined && typeof value !== 'string') {
|
|
13
|
+
throw new Error(`${name} must be a string`);
|
|
14
|
+
}
|
|
15
|
+
if (required && value !== null && value !== undefined && typeof value === 'string' && value.trim().length === 0) {
|
|
16
|
+
throw new Error(`${name} cannot be empty`);
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
export function validateNumber(value, name, required = true, min = null, max = null) {
|
|
21
|
+
if (required && (value === null || value === undefined)) {
|
|
22
|
+
throw new Error(`${name} is required`);
|
|
23
|
+
}
|
|
24
|
+
if (value !== null && value !== undefined) {
|
|
25
|
+
if (typeof value !== 'number' || !Number.isFinite(value)) {
|
|
26
|
+
throw new Error(`${name} must be a finite number`);
|
|
27
|
+
}
|
|
28
|
+
if (min !== null && value < min) {
|
|
29
|
+
throw new Error(`${name} must be at least ${min}`);
|
|
30
|
+
}
|
|
31
|
+
if (max !== null && value > max) {
|
|
32
|
+
throw new Error(`${name} must be at most ${max}`);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return value;
|
|
36
|
+
}
|
|
37
|
+
export function validateInteger(value, name, required = true, min = null, max = null) {
|
|
38
|
+
validateNumber(value, name, required, min, max);
|
|
39
|
+
if (value !== null && value !== undefined && !Number.isInteger(value)) {
|
|
40
|
+
throw new Error(`${name} must be an integer`);
|
|
41
|
+
}
|
|
42
|
+
return value;
|
|
43
|
+
}
|
|
44
|
+
export function validateArray(value, name, required = true, minLength = null, maxLength = null) {
|
|
45
|
+
if (required && (value === null || value === undefined)) {
|
|
46
|
+
throw new Error(`${name} is required`);
|
|
47
|
+
}
|
|
48
|
+
if (value !== null && value !== undefined) {
|
|
49
|
+
if (!Array.isArray(value)) {
|
|
50
|
+
throw new Error(`${name} must be an array`);
|
|
51
|
+
}
|
|
52
|
+
if (minLength !== null && value.length < minLength) {
|
|
53
|
+
throw new Error(`${name} must have at least ${minLength} elements`);
|
|
54
|
+
}
|
|
55
|
+
if (maxLength !== null && value.length > maxLength) {
|
|
56
|
+
throw new Error(`${name} must have at most ${maxLength} elements`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return value;
|
|
60
|
+
}
|
|
61
|
+
export function validateVector(vector, expectedDimension = null, name = 'vector') {
|
|
62
|
+
validateArray(vector, name, true, 1);
|
|
63
|
+
const vec = vector;
|
|
64
|
+
for (let i = 0; i < vec.length; i++) {
|
|
65
|
+
if (typeof vec[i] !== 'number' || !Number.isFinite(vec[i])) {
|
|
66
|
+
throw new Error(`${name}[${i}] must be a finite number`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
if (expectedDimension !== null && vec.length !== expectedDimension) {
|
|
70
|
+
throw new Error(`${name} dimension mismatch: expected ${expectedDimension}, got ${vec.length}`);
|
|
71
|
+
}
|
|
72
|
+
return vec;
|
|
73
|
+
}
|
|
74
|
+
export function validateBoolean(value, name, required = true) {
|
|
75
|
+
if (required && (value === null || value === undefined)) {
|
|
76
|
+
throw new Error(`${name} is required`);
|
|
77
|
+
}
|
|
78
|
+
if (value !== null && value !== undefined && typeof value !== 'boolean') {
|
|
79
|
+
throw new Error(`${name} must be a boolean`);
|
|
80
|
+
}
|
|
81
|
+
return value;
|
|
82
|
+
}
|
|
83
|
+
export function validateObject(value, name, required = true) {
|
|
84
|
+
if (required && (value === null || value === undefined)) {
|
|
85
|
+
throw new Error(`${name} is required`);
|
|
86
|
+
}
|
|
87
|
+
if (value !== null && value !== undefined) {
|
|
88
|
+
if (typeof value !== 'object' || Array.isArray(value)) {
|
|
89
|
+
throw new Error(`${name} must be an object`);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return value;
|
|
93
|
+
}
|
|
94
|
+
export function reciprocalRankFusion(resultLists, k = 60) {
|
|
95
|
+
const scoreMap = new Map();
|
|
96
|
+
const metaMap = new Map();
|
|
97
|
+
const sourceRanks = new Map();
|
|
98
|
+
resultLists.forEach((resultList, listIndex) => {
|
|
99
|
+
if (!Array.isArray(resultList))
|
|
100
|
+
return;
|
|
101
|
+
resultList.forEach((result, rank) => {
|
|
102
|
+
const docId = result.id;
|
|
103
|
+
const currentScore = scoreMap.get(docId) || 0;
|
|
104
|
+
const rrfContribution = 1 / (k + rank + 1);
|
|
105
|
+
scoreMap.set(docId, currentScore + rrfContribution);
|
|
106
|
+
if (!metaMap.has(docId) && result.meta) {
|
|
107
|
+
metaMap.set(docId, result.meta);
|
|
108
|
+
}
|
|
109
|
+
if (!sourceRanks.has(docId)) {
|
|
110
|
+
sourceRanks.set(docId, {});
|
|
111
|
+
}
|
|
112
|
+
sourceRanks.get(docId)[`list_${listIndex}`] = rank + 1;
|
|
113
|
+
});
|
|
114
|
+
});
|
|
115
|
+
const fusedResults = [];
|
|
116
|
+
for (const [docId, score] of scoreMap.entries()) {
|
|
117
|
+
fusedResults.push({
|
|
118
|
+
id: docId,
|
|
119
|
+
score: score,
|
|
120
|
+
meta: metaMap.get(docId) || {},
|
|
121
|
+
source_ranks: sourceRanks.get(docId) || {}
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
fusedResults.sort((a, b) => b.score - a.score);
|
|
125
|
+
return fusedResults;
|
|
126
|
+
}
|
|
127
|
+
export function validateRrfInput(data) {
|
|
128
|
+
if (Array.isArray(data)) {
|
|
129
|
+
for (let i = 0; i < data.length; i++) {
|
|
130
|
+
if (!Array.isArray(data[i])) {
|
|
131
|
+
return { isValid: false, errorMessage: `List ${i} must be an array` };
|
|
132
|
+
}
|
|
133
|
+
for (let j = 0; j < data[i].length; j++) {
|
|
134
|
+
const doc = data[i][j];
|
|
135
|
+
if (!doc.id) {
|
|
136
|
+
return { isValid: false, errorMessage: `List ${i}, item ${j} missing required 'id' field` };
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
return { isValid: true, errorMessage: '' };
|
|
141
|
+
}
|
|
142
|
+
if (typeof data !== 'object' || data === null) {
|
|
143
|
+
return { isValid: false, errorMessage: 'Input data must be an object or array' };
|
|
144
|
+
}
|
|
145
|
+
const obj = data;
|
|
146
|
+
const requiredKeys = ['dense_results', 'sparse_results'];
|
|
147
|
+
for (const key of requiredKeys) {
|
|
148
|
+
if (!(key in obj)) {
|
|
149
|
+
return { isValid: false, errorMessage: `Missing required key: ${key}` };
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if (!Array.isArray(obj.dense_results)) {
|
|
153
|
+
return { isValid: false, errorMessage: 'dense_results must be an array' };
|
|
154
|
+
}
|
|
155
|
+
for (let i = 0; i < obj.dense_results.length; i++) {
|
|
156
|
+
const doc = obj.dense_results[i];
|
|
157
|
+
if (typeof doc !== 'object' || doc === null) {
|
|
158
|
+
return { isValid: false, errorMessage: `dense_results[${i}] must be an object` };
|
|
159
|
+
}
|
|
160
|
+
const requiredDocKeys = ['id', 'score', 'rank'];
|
|
161
|
+
for (const key of requiredDocKeys) {
|
|
162
|
+
if (!(key in doc)) {
|
|
163
|
+
return { isValid: false, errorMessage: `dense_results[${i}] missing required key: ${key}` };
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
if (!Array.isArray(obj.sparse_results)) {
|
|
168
|
+
return { isValid: false, errorMessage: 'sparse_results must be an array' };
|
|
169
|
+
}
|
|
170
|
+
for (let i = 0; i < obj.sparse_results.length; i++) {
|
|
171
|
+
const doc = obj.sparse_results[i];
|
|
172
|
+
if (typeof doc !== 'object' || doc === null) {
|
|
173
|
+
return { isValid: false, errorMessage: `sparse_results[${i}] must be an object` };
|
|
174
|
+
}
|
|
175
|
+
const requiredDocKeys = ['id', 'score', 'rank'];
|
|
176
|
+
for (const key of requiredDocKeys) {
|
|
177
|
+
if (!(key in doc)) {
|
|
178
|
+
return { isValid: false, errorMessage: `sparse_results[${i}] missing required key: ${key}` };
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
if ('metadata' in obj) {
|
|
183
|
+
if (!Array.isArray(obj.metadata)) {
|
|
184
|
+
return { isValid: false, errorMessage: 'metadata must be an array' };
|
|
185
|
+
}
|
|
186
|
+
for (let i = 0; i < obj.metadata.length; i++) {
|
|
187
|
+
const meta = obj.metadata[i];
|
|
188
|
+
if (typeof meta !== 'object' || meta === null) {
|
|
189
|
+
return { isValid: false, errorMessage: `metadata[${i}] must be an object` };
|
|
190
|
+
}
|
|
191
|
+
if (!('id' in meta)) {
|
|
192
|
+
return { isValid: false, errorMessage: `metadata[${i}] missing required key: id` };
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
return { isValid: true, errorMessage: '' };
|
|
197
|
+
}
|
|
198
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "endee",
|
|
3
|
+
"version": "1.0.0-beta.1",
|
|
4
|
+
"description": "TypeScript client for encrypted vector database with maximum security and speed",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"type": "module",
|
|
8
|
+
"files": [
|
|
9
|
+
"dist/"
|
|
10
|
+
],
|
|
11
|
+
"scripts": {
|
|
12
|
+
"build": "tsc",
|
|
13
|
+
"build:watch": "tsc --watch",
|
|
14
|
+
"prepublishOnly": "npm run build",
|
|
15
|
+
"test": "echo \"Error: no test specified\" && exit 1",
|
|
16
|
+
"clean": "find src tests -name '*.js' -o -name '*.js.map' -o -name '*.d.ts' -o -name '*.d.ts.map' | xargs rm -f 2>/dev/null || true",
|
|
17
|
+
"prebuild": "npm run clean"
|
|
18
|
+
},
|
|
19
|
+
"keywords": [
|
|
20
|
+
"vector",
|
|
21
|
+
"database",
|
|
22
|
+
"client",
|
|
23
|
+
"typescript",
|
|
24
|
+
"encrypted",
|
|
25
|
+
"ann",
|
|
26
|
+
"similarity-search"
|
|
27
|
+
],
|
|
28
|
+
"author": "Pankaj Singh",
|
|
29
|
+
"license": "MIT",
|
|
30
|
+
"dependencies": {
|
|
31
|
+
"@msgpack/msgpack": "^3.1.2",
|
|
32
|
+
"axios": "^1.10.0",
|
|
33
|
+
"pako": "^2.1.0"
|
|
34
|
+
},
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"@types/node": "^24.0.1",
|
|
37
|
+
"@types/pako": "^2.0.3",
|
|
38
|
+
"typescript": "^5.8.3"
|
|
39
|
+
},
|
|
40
|
+
"engines": {
|
|
41
|
+
"node": ">=18.0.0"
|
|
42
|
+
}
|
|
43
|
+
}
|