@soulcraft/brainy 0.41.0 → 0.43.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.
Files changed (144) hide show
  1. package/README.md +605 -194
  2. package/dist/augmentations/conduitAugmentations.js +1158 -0
  3. package/dist/augmentations/conduitAugmentations.js.map +1 -0
  4. package/dist/augmentations/memoryAugmentations.d.ts +2 -0
  5. package/dist/augmentations/memoryAugmentations.d.ts.map +1 -1
  6. package/dist/augmentations/memoryAugmentations.js +270 -0
  7. package/dist/augmentations/memoryAugmentations.js.map +1 -0
  8. package/dist/augmentations/serverSearchAugmentations.js +531 -0
  9. package/dist/augmentations/serverSearchAugmentations.js.map +1 -0
  10. package/dist/browserFramework.d.ts +15 -0
  11. package/dist/demo.d.ts +106 -0
  12. package/dist/examples/basicUsage.js +118 -0
  13. package/dist/examples/basicUsage.js.map +1 -0
  14. package/dist/hnsw/distributedSearch.js +452 -0
  15. package/dist/hnsw/distributedSearch.js.map +1 -0
  16. package/dist/hnsw/hnswIndex.js +602 -0
  17. package/dist/hnsw/hnswIndex.js.map +1 -0
  18. package/dist/hnsw/hnswIndexOptimized.js +471 -0
  19. package/dist/hnsw/hnswIndexOptimized.js.map +1 -0
  20. package/dist/hnsw/optimizedHNSWIndex.js +313 -0
  21. package/dist/hnsw/optimizedHNSWIndex.js.map +1 -0
  22. package/dist/hnsw/partitionedHNSWIndex.js +304 -0
  23. package/dist/hnsw/partitionedHNSWIndex.js.map +1 -0
  24. package/dist/hnsw/scaledHNSWSystem.js +559 -0
  25. package/dist/hnsw/scaledHNSWSystem.js.map +1 -0
  26. package/dist/index.d.ts +3 -2
  27. package/dist/index.js +81 -0
  28. package/dist/mcp/brainyMCPAdapter.js +142 -0
  29. package/dist/mcp/brainyMCPAdapter.js.map +1 -0
  30. package/dist/mcp/brainyMCPService.js +248 -0
  31. package/dist/mcp/brainyMCPService.js.map +1 -0
  32. package/dist/mcp/index.js +17 -0
  33. package/dist/mcp/index.js.map +1 -0
  34. package/dist/mcp/mcpAugmentationToolset.js +180 -0
  35. package/dist/mcp/mcpAugmentationToolset.js.map +1 -0
  36. package/dist/storage/adapters/baseStorageAdapter.js +349 -0
  37. package/dist/storage/adapters/baseStorageAdapter.js.map +1 -0
  38. package/dist/storage/adapters/batchS3Operations.js +287 -0
  39. package/dist/storage/adapters/batchS3Operations.js.map +1 -0
  40. package/dist/storage/adapters/fileSystemStorage.js +846 -0
  41. package/dist/storage/adapters/fileSystemStorage.js.map +1 -0
  42. package/dist/storage/adapters/memoryStorage.js +532 -0
  43. package/dist/storage/adapters/memoryStorage.js.map +1 -0
  44. package/dist/storage/adapters/opfsStorage.d.ts.map +1 -1
  45. package/dist/storage/adapters/opfsStorage.js +1118 -0
  46. package/dist/storage/adapters/opfsStorage.js.map +1 -0
  47. package/dist/storage/adapters/optimizedS3Search.js +248 -0
  48. package/dist/storage/adapters/optimizedS3Search.js.map +1 -0
  49. package/dist/storage/adapters/s3CompatibleStorage.js +2026 -0
  50. package/dist/storage/adapters/s3CompatibleStorage.js.map +1 -0
  51. package/dist/storage/baseStorage.js +603 -0
  52. package/dist/storage/baseStorage.js.map +1 -0
  53. package/dist/storage/cacheManager.js +1306 -0
  54. package/dist/storage/cacheManager.js.map +1 -0
  55. package/dist/storage/enhancedCacheManager.js +520 -0
  56. package/dist/storage/enhancedCacheManager.js.map +1 -0
  57. package/dist/storage/readOnlyOptimizations.js +425 -0
  58. package/dist/storage/readOnlyOptimizations.js.map +1 -0
  59. package/dist/storage/storageFactory.d.ts +0 -1
  60. package/dist/storage/storageFactory.d.ts.map +1 -1
  61. package/dist/storage/storageFactory.js +227 -0
  62. package/dist/storage/storageFactory.js.map +1 -0
  63. package/dist/types/augmentations.js +16 -0
  64. package/dist/types/augmentations.js.map +1 -0
  65. package/dist/types/brainyDataInterface.js +8 -0
  66. package/dist/types/brainyDataInterface.js.map +1 -0
  67. package/dist/types/distributedTypes.js +6 -0
  68. package/dist/types/distributedTypes.js.map +1 -0
  69. package/dist/types/fileSystemTypes.js +8 -0
  70. package/dist/types/fileSystemTypes.js.map +1 -0
  71. package/dist/types/graphTypes.js +247 -0
  72. package/dist/types/graphTypes.js.map +1 -0
  73. package/dist/types/mcpTypes.js +22 -0
  74. package/dist/types/mcpTypes.js.map +1 -0
  75. package/dist/types/paginationTypes.js +5 -0
  76. package/dist/types/paginationTypes.js.map +1 -0
  77. package/dist/types/pipelineTypes.js +7 -0
  78. package/dist/types/pipelineTypes.js.map +1 -0
  79. package/dist/types/tensorflowTypes.js +6 -0
  80. package/dist/types/tensorflowTypes.js.map +1 -0
  81. package/dist/unified.js +52 -128251
  82. package/dist/utils/autoConfiguration.js +341 -0
  83. package/dist/utils/autoConfiguration.js.map +1 -0
  84. package/dist/utils/cacheAutoConfig.js +261 -0
  85. package/dist/utils/cacheAutoConfig.js.map +1 -0
  86. package/dist/utils/crypto.js +45 -0
  87. package/dist/utils/crypto.js.map +1 -0
  88. package/dist/utils/distance.js +239 -0
  89. package/dist/utils/distance.js.map +1 -0
  90. package/dist/utils/embedding.d.ts.map +1 -1
  91. package/dist/utils/embedding.js +702 -0
  92. package/dist/utils/embedding.js.map +1 -0
  93. package/dist/utils/environment.js +75 -0
  94. package/dist/utils/environment.js.map +1 -0
  95. package/dist/utils/fieldNameTracking.js +90 -0
  96. package/dist/utils/fieldNameTracking.js.map +1 -0
  97. package/dist/utils/index.d.ts +1 -0
  98. package/dist/utils/index.d.ts.map +1 -1
  99. package/dist/utils/index.js +8 -0
  100. package/dist/utils/index.js.map +1 -0
  101. package/dist/utils/jsonProcessing.js +179 -0
  102. package/dist/utils/jsonProcessing.js.map +1 -0
  103. package/dist/utils/logger.js +129 -0
  104. package/dist/utils/logger.js.map +1 -0
  105. package/dist/utils/operationUtils.js +126 -0
  106. package/dist/utils/operationUtils.js.map +1 -0
  107. package/dist/utils/robustModelLoader.d.ts +14 -0
  108. package/dist/utils/robustModelLoader.d.ts.map +1 -1
  109. package/dist/utils/robustModelLoader.js +537 -0
  110. package/dist/utils/robustModelLoader.js.map +1 -0
  111. package/dist/utils/searchCache.js +248 -0
  112. package/dist/utils/searchCache.js.map +1 -0
  113. package/dist/utils/statistics.js +25 -0
  114. package/dist/utils/statistics.js.map +1 -0
  115. package/dist/utils/statisticsCollector.js +224 -0
  116. package/dist/utils/statisticsCollector.js.map +1 -0
  117. package/dist/utils/textEncoding.js +309 -0
  118. package/dist/utils/textEncoding.js.map +1 -0
  119. package/dist/utils/typeUtils.js +40 -0
  120. package/dist/utils/typeUtils.js.map +1 -0
  121. package/dist/utils/version.d.ts +15 -3
  122. package/dist/utils/version.d.ts.map +1 -1
  123. package/dist/utils/version.js +24 -0
  124. package/dist/utils/version.js.map +1 -0
  125. package/dist/utils/workerUtils.js +458 -0
  126. package/dist/utils/workerUtils.js.map +1 -0
  127. package/package.json +23 -18
  128. package/dist/brainy.js +0 -90220
  129. package/dist/brainy.min.js +0 -12511
  130. package/dist/patched-platform-node.d.ts +0 -17
  131. package/dist/statistics/statisticsManager.d.ts +0 -121
  132. package/dist/storage/fileSystemStorage.d.ts +0 -73
  133. package/dist/storage/fileSystemStorage.d.ts.map +0 -1
  134. package/dist/storage/opfsStorage.d.ts +0 -236
  135. package/dist/storage/opfsStorage.d.ts.map +0 -1
  136. package/dist/storage/s3CompatibleStorage.d.ts +0 -157
  137. package/dist/storage/s3CompatibleStorage.d.ts.map +0 -1
  138. package/dist/testing/prettyReporter.d.ts +0 -23
  139. package/dist/testing/prettySummaryReporter.d.ts +0 -22
  140. package/dist/unified.min.js +0 -16153
  141. package/dist/utils/environmentDetection.d.ts +0 -47
  142. package/dist/utils/environmentDetection.d.ts.map +0 -1
  143. package/dist/utils/tensorflowUtils.d.ts +0 -17
  144. package/dist/utils/tensorflowUtils.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conduitAugmentations.js","sourceRoot":"","sources":["../../src/augmentations/conduitAugmentations.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,9 @@ export declare class MemoryStorageAugmentation extends BaseMemoryAugmentation {
47
47
  export declare class FileSystemStorageAugmentation extends BaseMemoryAugmentation {
48
48
  readonly description = "Memory augmentation that stores data in the file system";
49
49
  enabled: boolean;
50
+ private rootDirectory;
50
51
  constructor(name: string, rootDirectory?: string);
52
+ initialize(): Promise<void>;
51
53
  getType(): AugmentationType;
52
54
  }
53
55
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"memoryAugmentations.d.ts","sourceRoot":"","sources":["../../src/augmentations/memoryAugmentations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memoryAugmentations.d.ts","sourceRoot":"","sources":["../../src/augmentations/memoryAugmentations.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACvB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAC,cAAc,EAAS,MAAM,iBAAiB,CAAA;AAKtD;;GAEG;AACH,uBAAe,sBAAuB,YAAW,mBAAmB;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAA6B;IACzD,OAAO,EAAE,OAAO,CAAO;IACvB,SAAS,CAAC,OAAO,EAAE,cAAc,CAAA;IACjC,SAAS,CAAC,aAAa,UAAQ;gBAEnB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc;IAK3C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAc3B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,SAAS,IAAI,OAAO,CAAC,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IAIrD,SAAS,CACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAgBnC,YAAY,CACd,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAmBnC,UAAU,CACZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAgBnC,UAAU,CACZ,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAiBnC,YAAY,CACd,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC,CAAC;IAW1C;;;;;;OAMG;IACG,MAAM,CACR,KAAK,EAAE,OAAO,EACd,CAAC,GAAE,MAAW,EACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC;QAClC,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,OAAO,CAAC;KACjB,CAAC,CAAC,CAAC;cAqEY,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;CAKrD;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,sBAAsB;IACjE,QAAQ,CAAC,WAAW,oDAAmD;IACvE,OAAO,UAAO;gBAEF,IAAI,EAAE,MAAM;IAIxB,OAAO,IAAI,gBAAgB;CAG9B;AAED;;GAEG;AACH,qBAAa,6BAA8B,SAAQ,sBAAsB;IACrE,QAAQ,CAAC,WAAW,6DAA4D;IAChF,OAAO,UAAO;IACd,OAAO,CAAC,aAAa,CAAQ;gBAEjB,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;IAM1C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC,OAAO,IAAI,gBAAgB;CAG9B;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,sBAAsB;IAC/D,QAAQ,CAAC,WAAW,4EAA2E;IAC/F,OAAO,UAAO;gBAEF,IAAI,EAAE,MAAM;IAIxB,OAAO,IAAI,gBAAgB;CAG9B;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC1C,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IACL,WAAW,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAA;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAChC,GACP,OAAO,CAAC,mBAAmB,CAAC,CAuC9B"}
@@ -0,0 +1,270 @@
1
+ import { AugmentationType } from '../types/augmentations.js';
2
+ import { MemoryStorage, OPFSStorage } from '../storage/storageFactory.js';
3
+ // FileSystemStorage will be dynamically imported when needed to avoid fs imports in browser
4
+ import { cosineDistance } from '../utils/distance.js';
5
+ /**
6
+ * Base class for memory augmentations that wrap a StorageAdapter
7
+ */
8
+ class BaseMemoryAugmentation {
9
+ constructor(name, storage) {
10
+ this.description = 'Base memory augmentation';
11
+ this.enabled = true;
12
+ this.isInitialized = false;
13
+ this.name = name;
14
+ this.storage = storage;
15
+ }
16
+ async initialize() {
17
+ if (this.isInitialized) {
18
+ return;
19
+ }
20
+ try {
21
+ await this.storage.init();
22
+ this.isInitialized = true;
23
+ }
24
+ catch (error) {
25
+ console.error(`Failed to initialize ${this.name}:`, error);
26
+ throw new Error(`Failed to initialize ${this.name}: ${error}`);
27
+ }
28
+ }
29
+ async shutDown() {
30
+ this.isInitialized = false;
31
+ }
32
+ async getStatus() {
33
+ return this.isInitialized ? 'active' : 'inactive';
34
+ }
35
+ async storeData(key, data, options) {
36
+ await this.ensureInitialized();
37
+ try {
38
+ await this.storage.saveMetadata(key, data);
39
+ return { success: true, data: true };
40
+ }
41
+ catch (error) {
42
+ console.error(`Failed to store data for key ${key}:`, error);
43
+ return {
44
+ success: false,
45
+ data: false,
46
+ error: `Failed to store data: ${error}`
47
+ };
48
+ }
49
+ }
50
+ async retrieveData(key, options) {
51
+ await this.ensureInitialized();
52
+ try {
53
+ const data = await this.storage.getMetadata(key);
54
+ return {
55
+ success: true,
56
+ data
57
+ };
58
+ }
59
+ catch (error) {
60
+ console.error(`Failed to retrieve data for key ${key}:`, error);
61
+ return {
62
+ success: false,
63
+ data: null,
64
+ error: `Failed to retrieve data: ${error}`
65
+ };
66
+ }
67
+ }
68
+ async updateData(key, data, options) {
69
+ await this.ensureInitialized();
70
+ try {
71
+ await this.storage.saveMetadata(key, data);
72
+ return { success: true, data: true };
73
+ }
74
+ catch (error) {
75
+ console.error(`Failed to update data for key ${key}:`, error);
76
+ return {
77
+ success: false,
78
+ data: false,
79
+ error: `Failed to update data: ${error}`
80
+ };
81
+ }
82
+ }
83
+ async deleteData(key, options) {
84
+ await this.ensureInitialized();
85
+ try {
86
+ // There's no direct deleteMetadata method, so we save null
87
+ await this.storage.saveMetadata(key, null);
88
+ return { success: true, data: true };
89
+ }
90
+ catch (error) {
91
+ console.error(`Failed to delete data for key ${key}:`, error);
92
+ return {
93
+ success: false,
94
+ data: false,
95
+ error: `Failed to delete data: ${error}`
96
+ };
97
+ }
98
+ }
99
+ async listDataKeys(pattern, options) {
100
+ // This is a limitation of the current StorageAdapter interface
101
+ // It doesn't provide a way to list all metadata keys
102
+ // We could implement this in the future by extending the StorageAdapter interface
103
+ return {
104
+ success: false,
105
+ data: [],
106
+ error: 'listDataKeys is not supported by this storage adapter'
107
+ };
108
+ }
109
+ /**
110
+ * Searches for data in the storage using vector similarity.
111
+ * Implements the findNearest functionality by calculating distances client-side.
112
+ * @param query The query vector or data to search for
113
+ * @param k Number of results to return (default: 10)
114
+ * @param options Optional search options
115
+ */
116
+ async search(query, k = 10, options) {
117
+ await this.ensureInitialized();
118
+ try {
119
+ // Check if query is a vector
120
+ let queryVector;
121
+ if (Array.isArray(query) && query.every(item => typeof item === 'number')) {
122
+ queryVector = query;
123
+ }
124
+ else {
125
+ // If query is not a vector, we can't perform vector search
126
+ return {
127
+ success: false,
128
+ data: [],
129
+ error: 'Query must be a vector (array of numbers) for vector search'
130
+ };
131
+ }
132
+ // Get all nodes from storage
133
+ const nodes = await this.storage.getAllNouns();
134
+ // Calculate distances and prepare results
135
+ const results = [];
136
+ for (const node of nodes) {
137
+ // Skip nodes that don't have a vector
138
+ if (!node.vector || !Array.isArray(node.vector)) {
139
+ continue;
140
+ }
141
+ // Get metadata for the node
142
+ const metadata = await this.storage.getMetadata(node.id);
143
+ // Calculate distance between query vector and node vector
144
+ const distance = cosineDistance(queryVector, node.vector);
145
+ // Convert distance to similarity score (1 - distance for cosine)
146
+ // This way higher scores are better (more similar)
147
+ const score = 1 - distance;
148
+ results.push({
149
+ id: node.id,
150
+ score,
151
+ data: metadata
152
+ });
153
+ }
154
+ // Sort results by score (descending) and take top k
155
+ results.sort((a, b) => b.score - a.score);
156
+ const topResults = results.slice(0, k);
157
+ return {
158
+ success: true,
159
+ data: topResults
160
+ };
161
+ }
162
+ catch (error) {
163
+ console.error(`Failed to search in storage:`, error);
164
+ return {
165
+ success: false,
166
+ data: [],
167
+ error: `Failed to search in storage: ${error}`
168
+ };
169
+ }
170
+ }
171
+ async ensureInitialized() {
172
+ if (!this.isInitialized) {
173
+ await this.initialize();
174
+ }
175
+ }
176
+ }
177
+ /**
178
+ * Memory augmentation that uses in-memory storage
179
+ */
180
+ export class MemoryStorageAugmentation extends BaseMemoryAugmentation {
181
+ constructor(name) {
182
+ super(name, new MemoryStorage());
183
+ this.description = 'Memory augmentation that stores data in memory';
184
+ this.enabled = true;
185
+ }
186
+ getType() {
187
+ return AugmentationType.MEMORY;
188
+ }
189
+ }
190
+ /**
191
+ * Memory augmentation that uses file system storage
192
+ */
193
+ export class FileSystemStorageAugmentation extends BaseMemoryAugmentation {
194
+ constructor(name, rootDirectory) {
195
+ // Temporarily use MemoryStorage, will be replaced in initialize()
196
+ super(name, new MemoryStorage());
197
+ this.description = 'Memory augmentation that stores data in the file system';
198
+ this.enabled = true;
199
+ this.rootDirectory = rootDirectory || '.';
200
+ }
201
+ async initialize() {
202
+ try {
203
+ // Dynamically import FileSystemStorage
204
+ const { FileSystemStorage } = await import('../storage/adapters/fileSystemStorage.js');
205
+ this.storage = new FileSystemStorage(this.rootDirectory);
206
+ await super.initialize();
207
+ }
208
+ catch (error) {
209
+ console.error('Failed to load FileSystemStorage:', error);
210
+ throw new Error(`Failed to initialize FileSystemStorage: ${error}`);
211
+ }
212
+ }
213
+ getType() {
214
+ return AugmentationType.MEMORY;
215
+ }
216
+ }
217
+ /**
218
+ * Memory augmentation that uses OPFS (Origin Private File System) storage
219
+ */
220
+ export class OPFSStorageAugmentation extends BaseMemoryAugmentation {
221
+ constructor(name) {
222
+ super(name, new OPFSStorage());
223
+ this.description = 'Memory augmentation that stores data in the Origin Private File System';
224
+ this.enabled = true;
225
+ }
226
+ getType() {
227
+ return AugmentationType.MEMORY;
228
+ }
229
+ }
230
+ /**
231
+ * Factory function to create the appropriate memory augmentation based on the environment
232
+ */
233
+ export async function createMemoryAugmentation(name, options = {}) {
234
+ // If a specific storage type is requested, use that
235
+ if (options.storageType) {
236
+ switch (options.storageType) {
237
+ case 'memory':
238
+ return new MemoryStorageAugmentation(name);
239
+ case 'filesystem':
240
+ return new FileSystemStorageAugmentation(name, options.rootDirectory);
241
+ case 'opfs':
242
+ return new OPFSStorageAugmentation(name);
243
+ }
244
+ }
245
+ // Otherwise, select based on environment
246
+ // Use the global isNode variable from the environment detection
247
+ const isNodeEnv = globalThis.__ENV__?.isNode || (typeof process !== 'undefined' &&
248
+ process.versions != null &&
249
+ process.versions.node != null);
250
+ if (isNodeEnv) {
251
+ // In Node.js, use FileSystemStorage
252
+ return new FileSystemStorageAugmentation(name, options.rootDirectory);
253
+ }
254
+ else {
255
+ // In browser, try OPFS first
256
+ const opfsStorage = new OPFSStorage();
257
+ if (opfsStorage.isOPFSAvailable()) {
258
+ // Request persistent storage if specified
259
+ if (options.requestPersistentStorage) {
260
+ await opfsStorage.requestPersistentStorage();
261
+ }
262
+ return new OPFSStorageAugmentation(name);
263
+ }
264
+ else {
265
+ // Fall back to memory storage
266
+ return new MemoryStorageAugmentation(name);
267
+ }
268
+ }
269
+ }
270
+ //# sourceMappingURL=memoryAugmentations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memoryAugmentations.js","sourceRoot":"","sources":["../../src/augmentations/memoryAugmentations.ts"],"names":[],"mappings":"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"}