@soulcraft/brainy 0.58.0 → 0.59.0
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/bin/brainy.js +539 -387
- package/dist/augmentations/conduitAugmentations.js +1 -1
- package/dist/augmentations/conduitAugmentations.js.map +1 -1
- package/dist/augmentations/cortexSense.js +3 -3
- package/dist/augmentations/cortexSense.js.map +1 -1
- package/dist/brainyData.js +2 -1
- package/dist/brainyData.js.map +1 -1
- package/dist/browserFramework.minimal.d.ts +14 -0
- package/dist/browserFramework.minimal.js +31 -0
- package/dist/browserFramework.minimal.js.map +1 -0
- package/dist/cortex/backupRestore.js +2 -2
- package/dist/cortex/backupRestore.js.map +1 -1
- package/dist/cortex/cortex.d.ts +17 -2
- package/dist/cortex/cortex.js +262 -103
- package/dist/cortex/cortex.js.map +1 -1
- package/dist/cortex/neuralImport.js +2 -2
- package/dist/cortex/neuralImport.js.map +1 -1
- package/dist/cortex/serviceIntegration.js +2 -2
- package/dist/cortex/serviceIntegration.js.map +1 -1
- package/dist/distributed/configManager.js +1 -1
- package/dist/distributed/configManager.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/mcp/brainyMCPAdapter.js +1 -1
- package/dist/mcp/brainyMCPAdapter.js.map +1 -1
- package/dist/mcp/brainyMCPBroadcast.d.ts +82 -0
- package/dist/mcp/brainyMCPBroadcast.js +303 -0
- package/dist/mcp/brainyMCPBroadcast.js.map +1 -0
- package/dist/mcp/brainyMCPClient.d.ts +92 -0
- package/dist/mcp/brainyMCPClient.js +254 -0
- package/dist/mcp/brainyMCPClient.js.map +1 -0
- package/dist/mcp/brainyMCPService.js +1 -1
- package/dist/mcp/brainyMCPService.js.map +1 -1
- package/dist/mcp/mcpAugmentationToolset.js +1 -1
- package/dist/mcp/mcpAugmentationToolset.js.map +1 -1
- package/dist/universal/crypto.d.ts +64 -0
- package/dist/universal/crypto.js +215 -0
- package/dist/universal/crypto.js.map +1 -0
- package/dist/universal/events.d.ts +31 -0
- package/dist/universal/events.js +156 -0
- package/dist/universal/events.js.map +1 -0
- package/dist/universal/fs.d.ts +102 -0
- package/dist/universal/fs.js +304 -0
- package/dist/universal/fs.js.map +1 -0
- package/dist/universal/index.d.ts +16 -0
- package/dist/universal/index.js +23 -0
- package/dist/universal/index.js.map +1 -0
- package/dist/universal/path.d.ts +51 -0
- package/dist/universal/path.js +161 -0
- package/dist/universal/path.js.map +1 -0
- package/dist/universal/uuid.d.ts +10 -0
- package/dist/universal/uuid.js +21 -0
- package/dist/universal/uuid.js.map +1 -0
- package/package.json +55 -2
- package/dist/augmentationFactory.d.ts.map +0 -1
- package/dist/augmentationPipeline.d.ts.map +0 -1
- package/dist/augmentationRegistry.d.ts.map +0 -1
- package/dist/augmentationRegistryLoader.d.ts.map +0 -1
- package/dist/augmentations/conduitAugmentations.d.ts.map +0 -1
- package/dist/augmentations/memoryAugmentations.d.ts.map +0 -1
- package/dist/augmentations/serverSearchAugmentations.d.ts.map +0 -1
- package/dist/brainyData.d.ts.map +0 -1
- package/dist/browserFramework.d.ts.map +0 -1
- package/dist/coreTypes.d.ts.map +0 -1
- package/dist/cortex/cli.d.ts +0 -8
- package/dist/cortex/cli.js +0 -207
- package/dist/cortex/cli.js.map +0 -1
- package/dist/cortex/commands/index.d.ts +0 -79
- package/dist/cortex/commands/index.js +0 -614
- package/dist/cortex/commands/index.js.map +0 -1
- package/dist/cortex/config.d.ts +0 -112
- package/dist/cortex/config.js +0 -312
- package/dist/cortex/config.js.map +0 -1
- package/dist/cortex/licensingSystem.d.ts +0 -126
- package/dist/cortex/licensingSystem.js +0 -474
- package/dist/cortex/licensingSystem.js.map +0 -1
- package/dist/cortex/webhookManager.d.ts +0 -39
- package/dist/cortex/webhookManager.js +0 -326
- package/dist/cortex/webhookManager.js.map +0 -1
- package/dist/demo.d.ts.map +0 -1
- package/dist/distributed/configManager.d.ts.map +0 -1
- package/dist/distributed/domainDetector.d.ts.map +0 -1
- package/dist/distributed/hashPartitioner.d.ts.map +0 -1
- package/dist/distributed/healthMonitor.d.ts.map +0 -1
- package/dist/distributed/index.d.ts.map +0 -1
- package/dist/distributed/operationalModes.d.ts.map +0 -1
- package/dist/errors/brainyError.d.ts.map +0 -1
- package/dist/examples/basicUsage.d.ts.map +0 -1
- package/dist/hnsw/distributedSearch.d.ts.map +0 -1
- package/dist/hnsw/hnswIndex.d.ts.map +0 -1
- package/dist/hnsw/hnswIndexOptimized.d.ts.map +0 -1
- package/dist/hnsw/optimizedHNSWIndex.d.ts.map +0 -1
- package/dist/hnsw/partitionedHNSWIndex.d.ts.map +0 -1
- package/dist/hnsw/scaledHNSWSystem.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/mcp/brainyMCPAdapter.d.ts.map +0 -1
- package/dist/mcp/brainyMCPService.d.ts.map +0 -1
- package/dist/mcp/index.d.ts.map +0 -1
- package/dist/mcp/mcpAugmentationToolset.d.ts.map +0 -1
- package/dist/pipeline.d.ts.map +0 -1
- package/dist/sequentialPipeline.d.ts.map +0 -1
- package/dist/setup.d.ts.map +0 -1
- package/dist/storage/adapters/baseStorageAdapter.d.ts.map +0 -1
- package/dist/storage/adapters/batchS3Operations.d.ts.map +0 -1
- package/dist/storage/adapters/fileSystemStorage.d.ts.map +0 -1
- package/dist/storage/adapters/memoryStorage.d.ts.map +0 -1
- package/dist/storage/adapters/opfsStorage.d.ts.map +0 -1
- package/dist/storage/adapters/optimizedS3Search.d.ts.map +0 -1
- package/dist/storage/adapters/s3CompatibleStorage.d.ts.map +0 -1
- package/dist/storage/baseStorage.d.ts.map +0 -1
- package/dist/storage/cacheManager.d.ts.map +0 -1
- package/dist/storage/enhancedCacheManager.d.ts.map +0 -1
- package/dist/storage/readOnlyOptimizations.d.ts.map +0 -1
- package/dist/storage/storageFactory.d.ts.map +0 -1
- package/dist/types/augmentations.d.ts.map +0 -1
- package/dist/types/brainyDataInterface.d.ts.map +0 -1
- package/dist/types/distributedTypes.d.ts.map +0 -1
- package/dist/types/fileSystemTypes.d.ts.map +0 -1
- package/dist/types/graphTypes.d.ts.map +0 -1
- package/dist/types/mcpTypes.d.ts.map +0 -1
- package/dist/types/paginationTypes.d.ts.map +0 -1
- package/dist/types/pipelineTypes.d.ts.map +0 -1
- package/dist/types/tensorflowTypes.d.ts +0 -26
- package/dist/types/tensorflowTypes.d.ts.map +0 -1
- package/dist/types/tensorflowTypes.js +0 -6
- package/dist/types/tensorflowTypes.js.map +0 -1
- package/dist/unified.d.ts.map +0 -1
- package/dist/utils/autoConfiguration.d.ts.map +0 -1
- package/dist/utils/cacheAutoConfig.d.ts.map +0 -1
- package/dist/utils/crypto.d.ts.map +0 -1
- package/dist/utils/distance.d.ts.map +0 -1
- package/dist/utils/embedding.d.ts.map +0 -1
- package/dist/utils/environment.d.ts.map +0 -1
- package/dist/utils/fieldNameTracking.d.ts.map +0 -1
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/jsonProcessing.d.ts.map +0 -1
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/operationUtils.d.ts.map +0 -1
- package/dist/utils/robustModelLoader.d.ts +0 -112
- package/dist/utils/robustModelLoader.d.ts.map +0 -1
- package/dist/utils/robustModelLoader.js +0 -624
- package/dist/utils/robustModelLoader.js.map +0 -1
- package/dist/utils/searchCache.d.ts.map +0 -1
- package/dist/utils/statistics.d.ts.map +0 -1
- package/dist/utils/statisticsCollector.d.ts.map +0 -1
- package/dist/utils/textEncoding.d.ts.map +0 -1
- package/dist/utils/typeUtils.d.ts.map +0 -1
- package/dist/utils/version.d.ts.map +0 -1
- package/dist/utils/workerUtils.d.ts.map +0 -1
- package/dist/webhooks/webhookSystem.d.ts +0 -114
- package/dist/webhooks/webhookSystem.js +0 -321
- package/dist/webhooks/webhookSystem.js.map +0 -1
- package/dist/worker.d.ts.map +0 -1
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Universal File System implementation
|
|
3
|
+
* Browser: Uses OPFS (Origin Private File System)
|
|
4
|
+
* Node.js: Uses built-in fs/promises
|
|
5
|
+
* Serverless: Uses memory-based fallback
|
|
6
|
+
*/
|
|
7
|
+
import { isBrowser, isNode } from '../utils/environment.js';
|
|
8
|
+
let nodeFs = null;
|
|
9
|
+
// Dynamic import for Node.js fs (only in Node.js environment)
|
|
10
|
+
if (isNode()) {
|
|
11
|
+
try {
|
|
12
|
+
nodeFs = await import('fs/promises');
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
// Ignore import errors in non-Node environments
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Browser implementation using OPFS
|
|
20
|
+
*/
|
|
21
|
+
class BrowserFS {
|
|
22
|
+
async getRoot() {
|
|
23
|
+
if ('storage' in navigator && 'getDirectory' in navigator.storage) {
|
|
24
|
+
return await navigator.storage.getDirectory();
|
|
25
|
+
}
|
|
26
|
+
throw new Error('OPFS not supported in this browser');
|
|
27
|
+
}
|
|
28
|
+
async getFileHandle(path, create = false) {
|
|
29
|
+
const root = await this.getRoot();
|
|
30
|
+
const parts = path.split('/').filter(p => p);
|
|
31
|
+
let dir = root;
|
|
32
|
+
for (let i = 0; i < parts.length - 1; i++) {
|
|
33
|
+
dir = await dir.getDirectoryHandle(parts[i], { create });
|
|
34
|
+
}
|
|
35
|
+
const fileName = parts[parts.length - 1];
|
|
36
|
+
return await dir.getFileHandle(fileName, { create });
|
|
37
|
+
}
|
|
38
|
+
async getDirHandle(path, create = false) {
|
|
39
|
+
const root = await this.getRoot();
|
|
40
|
+
const parts = path.split('/').filter(p => p);
|
|
41
|
+
let dir = root;
|
|
42
|
+
for (const part of parts) {
|
|
43
|
+
dir = await dir.getDirectoryHandle(part, { create });
|
|
44
|
+
}
|
|
45
|
+
return dir;
|
|
46
|
+
}
|
|
47
|
+
async readFile(path, encoding) {
|
|
48
|
+
try {
|
|
49
|
+
const fileHandle = await this.getFileHandle(path);
|
|
50
|
+
const file = await fileHandle.getFile();
|
|
51
|
+
return await file.text();
|
|
52
|
+
}
|
|
53
|
+
catch (error) {
|
|
54
|
+
throw new Error(`File not found: ${path}`);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
async writeFile(path, data, encoding) {
|
|
58
|
+
const fileHandle = await this.getFileHandle(path, true);
|
|
59
|
+
const writable = await fileHandle.createWritable();
|
|
60
|
+
await writable.write(data);
|
|
61
|
+
await writable.close();
|
|
62
|
+
}
|
|
63
|
+
async mkdir(path, options = { recursive: true }) {
|
|
64
|
+
await this.getDirHandle(path, true);
|
|
65
|
+
}
|
|
66
|
+
async exists(path) {
|
|
67
|
+
try {
|
|
68
|
+
await this.getFileHandle(path);
|
|
69
|
+
return true;
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
try {
|
|
73
|
+
await this.getDirHandle(path);
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
async readdir(path, options) {
|
|
82
|
+
const dir = await this.getDirHandle(path);
|
|
83
|
+
if (options?.withFileTypes) {
|
|
84
|
+
const entries = [];
|
|
85
|
+
for await (const [name, handle] of dir.entries()) {
|
|
86
|
+
entries.push({
|
|
87
|
+
name,
|
|
88
|
+
isDirectory: () => handle.kind === 'directory',
|
|
89
|
+
isFile: () => handle.kind === 'file'
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
return entries;
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
const entries = [];
|
|
96
|
+
for await (const [name] of dir.entries()) {
|
|
97
|
+
entries.push(name);
|
|
98
|
+
}
|
|
99
|
+
return entries;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
async unlink(path) {
|
|
103
|
+
const parts = path.split('/').filter(p => p);
|
|
104
|
+
const fileName = parts.pop();
|
|
105
|
+
const dirPath = parts.join('/');
|
|
106
|
+
if (dirPath) {
|
|
107
|
+
const dir = await this.getDirHandle(dirPath);
|
|
108
|
+
await dir.removeEntry(fileName);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
const root = await this.getRoot();
|
|
112
|
+
await root.removeEntry(fileName);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
async stat(path) {
|
|
116
|
+
try {
|
|
117
|
+
await this.getFileHandle(path);
|
|
118
|
+
return { isFile: () => true, isDirectory: () => false };
|
|
119
|
+
}
|
|
120
|
+
catch {
|
|
121
|
+
try {
|
|
122
|
+
await this.getDirHandle(path);
|
|
123
|
+
return { isFile: () => false, isDirectory: () => true };
|
|
124
|
+
}
|
|
125
|
+
catch {
|
|
126
|
+
throw new Error(`Path not found: ${path}`);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
async access(path, mode) {
|
|
131
|
+
const exists = await this.exists(path);
|
|
132
|
+
if (!exists) {
|
|
133
|
+
throw new Error(`ENOENT: no such file or directory, access '${path}'`);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Node.js implementation using fs/promises
|
|
139
|
+
*/
|
|
140
|
+
class NodeFS {
|
|
141
|
+
async readFile(path, encoding = 'utf-8') {
|
|
142
|
+
return await nodeFs.readFile(path, encoding);
|
|
143
|
+
}
|
|
144
|
+
async writeFile(path, data, encoding = 'utf-8') {
|
|
145
|
+
await nodeFs.writeFile(path, data, encoding);
|
|
146
|
+
}
|
|
147
|
+
async mkdir(path, options = { recursive: true }) {
|
|
148
|
+
await nodeFs.mkdir(path, options);
|
|
149
|
+
}
|
|
150
|
+
async exists(path) {
|
|
151
|
+
try {
|
|
152
|
+
await nodeFs.access(path);
|
|
153
|
+
return true;
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
async readdir(path, options) {
|
|
160
|
+
if (options?.withFileTypes) {
|
|
161
|
+
return await nodeFs.readdir(path, { withFileTypes: true });
|
|
162
|
+
}
|
|
163
|
+
return await nodeFs.readdir(path);
|
|
164
|
+
}
|
|
165
|
+
async unlink(path) {
|
|
166
|
+
await nodeFs.unlink(path);
|
|
167
|
+
}
|
|
168
|
+
async stat(path) {
|
|
169
|
+
const stats = await nodeFs.stat(path);
|
|
170
|
+
return {
|
|
171
|
+
isFile: () => stats.isFile(),
|
|
172
|
+
isDirectory: () => stats.isDirectory()
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
async access(path, mode) {
|
|
176
|
+
await nodeFs.access(path, mode);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Memory-based fallback for serverless/edge environments
|
|
181
|
+
*/
|
|
182
|
+
class MemoryFS {
|
|
183
|
+
constructor() {
|
|
184
|
+
this.files = new Map();
|
|
185
|
+
this.dirs = new Set();
|
|
186
|
+
}
|
|
187
|
+
async readFile(path, encoding) {
|
|
188
|
+
const content = this.files.get(path);
|
|
189
|
+
if (content === undefined) {
|
|
190
|
+
throw new Error(`File not found: ${path}`);
|
|
191
|
+
}
|
|
192
|
+
return content;
|
|
193
|
+
}
|
|
194
|
+
async writeFile(path, data, encoding) {
|
|
195
|
+
this.files.set(path, data);
|
|
196
|
+
// Ensure parent directories exist
|
|
197
|
+
const parts = path.split('/').slice(0, -1);
|
|
198
|
+
for (let i = 1; i <= parts.length; i++) {
|
|
199
|
+
this.dirs.add(parts.slice(0, i).join('/'));
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
async mkdir(path, options = { recursive: true }) {
|
|
203
|
+
this.dirs.add(path);
|
|
204
|
+
if (options.recursive) {
|
|
205
|
+
const parts = path.split('/');
|
|
206
|
+
for (let i = 1; i <= parts.length; i++) {
|
|
207
|
+
this.dirs.add(parts.slice(0, i).join('/'));
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
async exists(path) {
|
|
212
|
+
return this.files.has(path) || this.dirs.has(path);
|
|
213
|
+
}
|
|
214
|
+
async readdir(path, options) {
|
|
215
|
+
const entries = new Set();
|
|
216
|
+
const pathPrefix = path + '/';
|
|
217
|
+
for (const filePath of this.files.keys()) {
|
|
218
|
+
if (filePath.startsWith(pathPrefix)) {
|
|
219
|
+
const relativePath = filePath.slice(pathPrefix.length);
|
|
220
|
+
const firstSegment = relativePath.split('/')[0];
|
|
221
|
+
entries.add(firstSegment);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
for (const dirPath of this.dirs) {
|
|
225
|
+
if (dirPath.startsWith(pathPrefix)) {
|
|
226
|
+
const relativePath = dirPath.slice(pathPrefix.length);
|
|
227
|
+
const firstSegment = relativePath.split('/')[0];
|
|
228
|
+
if (firstSegment)
|
|
229
|
+
entries.add(firstSegment);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
if (options?.withFileTypes) {
|
|
233
|
+
return Array.from(entries).map(name => ({
|
|
234
|
+
name,
|
|
235
|
+
isDirectory: () => this.dirs.has(path + '/' + name),
|
|
236
|
+
isFile: () => this.files.has(path + '/' + name)
|
|
237
|
+
}));
|
|
238
|
+
}
|
|
239
|
+
return Array.from(entries);
|
|
240
|
+
}
|
|
241
|
+
async unlink(path) {
|
|
242
|
+
this.files.delete(path);
|
|
243
|
+
}
|
|
244
|
+
async stat(path) {
|
|
245
|
+
const isFile = this.files.has(path);
|
|
246
|
+
const isDir = this.dirs.has(path);
|
|
247
|
+
if (!isFile && !isDir) {
|
|
248
|
+
throw new Error(`Path not found: ${path}`);
|
|
249
|
+
}
|
|
250
|
+
return {
|
|
251
|
+
isFile: () => isFile,
|
|
252
|
+
isDirectory: () => isDir
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
async access(path, mode) {
|
|
256
|
+
const exists = await this.exists(path);
|
|
257
|
+
if (!exists) {
|
|
258
|
+
throw new Error(`ENOENT: no such file or directory, access '${path}'`);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
// Create the appropriate filesystem implementation
|
|
263
|
+
let fsImpl;
|
|
264
|
+
if (isBrowser()) {
|
|
265
|
+
fsImpl = new BrowserFS();
|
|
266
|
+
}
|
|
267
|
+
else if (isNode() && nodeFs) {
|
|
268
|
+
fsImpl = new NodeFS();
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
fsImpl = new MemoryFS();
|
|
272
|
+
}
|
|
273
|
+
// Export the filesystem operations
|
|
274
|
+
export const readFile = fsImpl.readFile.bind(fsImpl);
|
|
275
|
+
export const writeFile = fsImpl.writeFile.bind(fsImpl);
|
|
276
|
+
export const mkdir = fsImpl.mkdir.bind(fsImpl);
|
|
277
|
+
export const exists = fsImpl.exists.bind(fsImpl);
|
|
278
|
+
export const readdir = fsImpl.readdir.bind(fsImpl);
|
|
279
|
+
export const unlink = fsImpl.unlink.bind(fsImpl);
|
|
280
|
+
export const stat = fsImpl.stat.bind(fsImpl);
|
|
281
|
+
export const access = fsImpl.access.bind(fsImpl);
|
|
282
|
+
// Default export with promises namespace compatibility
|
|
283
|
+
export default {
|
|
284
|
+
readFile,
|
|
285
|
+
writeFile,
|
|
286
|
+
mkdir,
|
|
287
|
+
exists,
|
|
288
|
+
readdir,
|
|
289
|
+
unlink,
|
|
290
|
+
stat,
|
|
291
|
+
access
|
|
292
|
+
};
|
|
293
|
+
// Named export for fs/promises compatibility
|
|
294
|
+
export const promises = {
|
|
295
|
+
readFile,
|
|
296
|
+
writeFile,
|
|
297
|
+
mkdir,
|
|
298
|
+
exists,
|
|
299
|
+
readdir,
|
|
300
|
+
unlink,
|
|
301
|
+
stat,
|
|
302
|
+
access
|
|
303
|
+
};
|
|
304
|
+
//# sourceMappingURL=fs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/universal/fs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Universal adapters for cross-environment compatibility
|
|
3
|
+
* Provides consistent APIs across Browser, Node.js, and Serverless environments
|
|
4
|
+
*/
|
|
5
|
+
export * from './uuid.js';
|
|
6
|
+
export { default as uuid } from './uuid.js';
|
|
7
|
+
export * from './crypto.js';
|
|
8
|
+
export { default as crypto } from './crypto.js';
|
|
9
|
+
export * from './fs.js';
|
|
10
|
+
export { default as fs } from './fs.js';
|
|
11
|
+
export * from './path.js';
|
|
12
|
+
export { default as path } from './path.js';
|
|
13
|
+
export * from './events.js';
|
|
14
|
+
export { default as events } from './events.js';
|
|
15
|
+
export { v4 as uuidv4 } from './uuid.js';
|
|
16
|
+
export { EventEmitter } from './events.js';
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Universal adapters for cross-environment compatibility
|
|
3
|
+
* Provides consistent APIs across Browser, Node.js, and Serverless environments
|
|
4
|
+
*/
|
|
5
|
+
// UUID adapter
|
|
6
|
+
export * from './uuid.js';
|
|
7
|
+
export { default as uuid } from './uuid.js';
|
|
8
|
+
// Crypto adapter
|
|
9
|
+
export * from './crypto.js';
|
|
10
|
+
export { default as crypto } from './crypto.js';
|
|
11
|
+
// File system adapter
|
|
12
|
+
export * from './fs.js';
|
|
13
|
+
export { default as fs } from './fs.js';
|
|
14
|
+
// Path adapter
|
|
15
|
+
export * from './path.js';
|
|
16
|
+
export { default as path } from './path.js';
|
|
17
|
+
// Events adapter
|
|
18
|
+
export * from './events.js';
|
|
19
|
+
export { default as events } from './events.js';
|
|
20
|
+
// Convenience re-exports for common patterns
|
|
21
|
+
export { v4 as uuidv4 } from './uuid.js';
|
|
22
|
+
export { EventEmitter } from './events.js';
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/universal/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAe;AACf,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAA;AAE3C,mBAAmB;AACnB,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAA;AAE/C,sBAAsB;AACtB,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,OAAO,IAAI,EAAE,EAAE,MAAM,SAAS,CAAA;AAEvC,eAAe;AACf,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAA;AAE3C,iBAAiB;AACjB,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAA;AAE/C,6CAA6C;AAC7C,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Universal Path implementation
|
|
3
|
+
* Browser: Manual path operations
|
|
4
|
+
* Node.js: Uses built-in path module
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Universal path operations
|
|
8
|
+
*/
|
|
9
|
+
export declare function join(...paths: string[]): string;
|
|
10
|
+
export declare function dirname(path: string): string;
|
|
11
|
+
export declare function basename(path: string, ext?: string): string;
|
|
12
|
+
export declare function extname(path: string): string;
|
|
13
|
+
export declare function resolve(...paths: string[]): string;
|
|
14
|
+
export declare function relative(from: string, to: string): string;
|
|
15
|
+
export declare function isAbsolute(path: string): boolean;
|
|
16
|
+
export declare const sep = "/";
|
|
17
|
+
export declare const delimiter = ":";
|
|
18
|
+
export declare const posix: {
|
|
19
|
+
join: typeof join;
|
|
20
|
+
dirname: typeof dirname;
|
|
21
|
+
basename: typeof basename;
|
|
22
|
+
extname: typeof extname;
|
|
23
|
+
resolve: typeof resolve;
|
|
24
|
+
relative: typeof relative;
|
|
25
|
+
isAbsolute: typeof isAbsolute;
|
|
26
|
+
sep: string;
|
|
27
|
+
delimiter: string;
|
|
28
|
+
};
|
|
29
|
+
declare const _default: {
|
|
30
|
+
join: typeof join;
|
|
31
|
+
dirname: typeof dirname;
|
|
32
|
+
basename: typeof basename;
|
|
33
|
+
extname: typeof extname;
|
|
34
|
+
resolve: typeof resolve;
|
|
35
|
+
relative: typeof relative;
|
|
36
|
+
isAbsolute: typeof isAbsolute;
|
|
37
|
+
sep: string;
|
|
38
|
+
delimiter: string;
|
|
39
|
+
posix: {
|
|
40
|
+
join: typeof join;
|
|
41
|
+
dirname: typeof dirname;
|
|
42
|
+
basename: typeof basename;
|
|
43
|
+
extname: typeof extname;
|
|
44
|
+
resolve: typeof resolve;
|
|
45
|
+
relative: typeof relative;
|
|
46
|
+
isAbsolute: typeof isAbsolute;
|
|
47
|
+
sep: string;
|
|
48
|
+
delimiter: string;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
export default _default;
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Universal Path implementation
|
|
3
|
+
* Browser: Manual path operations
|
|
4
|
+
* Node.js: Uses built-in path module
|
|
5
|
+
*/
|
|
6
|
+
import { isNode } from '../utils/environment.js';
|
|
7
|
+
let nodePath = null;
|
|
8
|
+
// Dynamic import for Node.js path (only in Node.js environment)
|
|
9
|
+
if (isNode()) {
|
|
10
|
+
try {
|
|
11
|
+
nodePath = await import('path');
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
// Ignore import errors in non-Node environments
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Universal path operations
|
|
19
|
+
*/
|
|
20
|
+
export function join(...paths) {
|
|
21
|
+
if (nodePath) {
|
|
22
|
+
return nodePath.join(...paths);
|
|
23
|
+
}
|
|
24
|
+
// Browser fallback implementation
|
|
25
|
+
const parts = [];
|
|
26
|
+
for (const path of paths) {
|
|
27
|
+
if (path) {
|
|
28
|
+
parts.push(...path.split('/').filter(p => p));
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return parts.join('/');
|
|
32
|
+
}
|
|
33
|
+
export function dirname(path) {
|
|
34
|
+
if (nodePath) {
|
|
35
|
+
return nodePath.dirname(path);
|
|
36
|
+
}
|
|
37
|
+
// Browser fallback implementation
|
|
38
|
+
const parts = path.split('/').filter(p => p);
|
|
39
|
+
if (parts.length <= 1)
|
|
40
|
+
return '.';
|
|
41
|
+
return parts.slice(0, -1).join('/');
|
|
42
|
+
}
|
|
43
|
+
export function basename(path, ext) {
|
|
44
|
+
if (nodePath) {
|
|
45
|
+
return nodePath.basename(path, ext);
|
|
46
|
+
}
|
|
47
|
+
// Browser fallback implementation
|
|
48
|
+
const parts = path.split('/');
|
|
49
|
+
let name = parts[parts.length - 1];
|
|
50
|
+
if (ext && name.endsWith(ext)) {
|
|
51
|
+
name = name.slice(0, -ext.length);
|
|
52
|
+
}
|
|
53
|
+
return name;
|
|
54
|
+
}
|
|
55
|
+
export function extname(path) {
|
|
56
|
+
if (nodePath) {
|
|
57
|
+
return nodePath.extname(path);
|
|
58
|
+
}
|
|
59
|
+
// Browser fallback implementation
|
|
60
|
+
const name = basename(path);
|
|
61
|
+
const lastDot = name.lastIndexOf('.');
|
|
62
|
+
return lastDot === -1 ? '' : name.slice(lastDot);
|
|
63
|
+
}
|
|
64
|
+
export function resolve(...paths) {
|
|
65
|
+
if (nodePath) {
|
|
66
|
+
return nodePath.resolve(...paths);
|
|
67
|
+
}
|
|
68
|
+
// Browser fallback implementation
|
|
69
|
+
let resolved = '';
|
|
70
|
+
let resolvedAbsolute = false;
|
|
71
|
+
for (let i = paths.length - 1; i >= -1 && !resolvedAbsolute; i--) {
|
|
72
|
+
const path = i >= 0 ? paths[i] : '/';
|
|
73
|
+
if (!path)
|
|
74
|
+
continue;
|
|
75
|
+
resolved = path + '/' + resolved;
|
|
76
|
+
resolvedAbsolute = path.charAt(0) === '/';
|
|
77
|
+
}
|
|
78
|
+
// Normalize the path
|
|
79
|
+
resolved = normalizeArray(resolved.split('/').filter(p => p), !resolvedAbsolute).join('/');
|
|
80
|
+
return (resolvedAbsolute ? '/' : '') + resolved;
|
|
81
|
+
}
|
|
82
|
+
export function relative(from, to) {
|
|
83
|
+
if (nodePath) {
|
|
84
|
+
return nodePath.relative(from, to);
|
|
85
|
+
}
|
|
86
|
+
// Browser fallback implementation
|
|
87
|
+
const fromParts = resolve(from).split('/').filter(p => p);
|
|
88
|
+
const toParts = resolve(to).split('/').filter(p => p);
|
|
89
|
+
let commonLength = 0;
|
|
90
|
+
for (let i = 0; i < Math.min(fromParts.length, toParts.length); i++) {
|
|
91
|
+
if (fromParts[i] === toParts[i]) {
|
|
92
|
+
commonLength++;
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
break;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
const upCount = fromParts.length - commonLength;
|
|
99
|
+
const upParts = new Array(upCount).fill('..');
|
|
100
|
+
const downParts = toParts.slice(commonLength);
|
|
101
|
+
return [...upParts, ...downParts].join('/');
|
|
102
|
+
}
|
|
103
|
+
export function isAbsolute(path) {
|
|
104
|
+
if (nodePath) {
|
|
105
|
+
return nodePath.isAbsolute(path);
|
|
106
|
+
}
|
|
107
|
+
// Browser fallback implementation
|
|
108
|
+
return path.charAt(0) === '/';
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Normalize array helper function
|
|
112
|
+
*/
|
|
113
|
+
function normalizeArray(parts, allowAboveRoot) {
|
|
114
|
+
const res = [];
|
|
115
|
+
for (let i = 0; i < parts.length; i++) {
|
|
116
|
+
const p = parts[i];
|
|
117
|
+
if (!p || p === '.')
|
|
118
|
+
continue;
|
|
119
|
+
if (p === '..') {
|
|
120
|
+
if (res.length && res[res.length - 1] !== '..') {
|
|
121
|
+
res.pop();
|
|
122
|
+
}
|
|
123
|
+
else if (allowAboveRoot) {
|
|
124
|
+
res.push('..');
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
res.push(p);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return res;
|
|
132
|
+
}
|
|
133
|
+
// Path separator (always use forward slash for consistency)
|
|
134
|
+
export const sep = '/';
|
|
135
|
+
export const delimiter = ':';
|
|
136
|
+
// POSIX path object for compatibility
|
|
137
|
+
export const posix = {
|
|
138
|
+
join,
|
|
139
|
+
dirname,
|
|
140
|
+
basename,
|
|
141
|
+
extname,
|
|
142
|
+
resolve,
|
|
143
|
+
relative,
|
|
144
|
+
isAbsolute,
|
|
145
|
+
sep: '/',
|
|
146
|
+
delimiter: ':'
|
|
147
|
+
};
|
|
148
|
+
// Default export
|
|
149
|
+
export default {
|
|
150
|
+
join,
|
|
151
|
+
dirname,
|
|
152
|
+
basename,
|
|
153
|
+
extname,
|
|
154
|
+
resolve,
|
|
155
|
+
relative,
|
|
156
|
+
isAbsolute,
|
|
157
|
+
sep,
|
|
158
|
+
delimiter,
|
|
159
|
+
posix
|
|
160
|
+
};
|
|
161
|
+
//# sourceMappingURL=path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.js","sourceRoot":"","sources":["../../src/universal/path.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Universal UUID implementation
|
|
3
|
+
* Works in all environments: Browser, Node.js, Serverless
|
|
4
|
+
*/
|
|
5
|
+
export function v4() {
|
|
6
|
+
// Use crypto.randomUUID if available (Node.js 19+, modern browsers)
|
|
7
|
+
if (typeof crypto !== 'undefined' && crypto.randomUUID) {
|
|
8
|
+
return crypto.randomUUID();
|
|
9
|
+
}
|
|
10
|
+
// Fallback implementation for older environments
|
|
11
|
+
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {
|
|
12
|
+
const r = Math.random() * 16 | 0;
|
|
13
|
+
const v = c === 'x' ? r : (r & 0x3 | 0x8);
|
|
14
|
+
return v.toString(16);
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
// Named export to match uuid package API
|
|
18
|
+
export { v4 as uuidv4 };
|
|
19
|
+
// Default export for convenience
|
|
20
|
+
export default { v4 };
|
|
21
|
+
//# sourceMappingURL=uuid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../src/universal/uuid.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,UAAU,EAAE;IAChB,oEAAoE;IACpE,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACvD,OAAO,MAAM,CAAC,UAAU,EAAE,CAAA;IAC5B,CAAC;IAED,iDAAiD;IACjD,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;QACnE,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;QAChC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAA;QACzC,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACvB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,yCAAyC;AACzC,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,CAAA;AAEvB,iCAAiC;AACjC,eAAe,EAAE,EAAE,EAAE,CAAA"}
|