@soulcraft/brainy 0.9.37 → 0.11.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/dist/index.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  /**
2
- * OPFS BrainyData
3
- * A vector database using HNSW indexing with Origin Private File System storage
2
+ * Brainy
3
+ * A vector and graph database using HNSW
4
4
  */
5
+ import './setup.js';
5
6
  import { BrainyData, BrainyDataConfig } from './brainyData.js';
6
7
  export { BrainyData };
7
8
  export type { BrainyDataConfig };
@@ -0,0 +1 @@
1
+ export {};
@@ -20,99 +20,57 @@ export declare class FileSystemStorage implements StorageAdapter {
20
20
  * Initialize the storage adapter
21
21
  */
22
22
  init(): Promise<void>;
23
- /**
24
- * Save a node to storage
25
- */
26
- saveNoun(noun: HNSWNoun): Promise<void>;
27
- /**
28
- * Get a node from storage
29
- */
23
+ private ensureDirectoryExists;
24
+ private getNounPath;
25
+ saveNoun(noun: HNSWNoun & {
26
+ metadata?: {
27
+ noun?: string;
28
+ };
29
+ }): Promise<void>;
30
30
  getNoun(id: string): Promise<HNSWNoun | null>;
31
+ deleteNoun(id: string): Promise<void>;
32
+ getAllNouns(): Promise<HNSWNoun[]>;
31
33
  /**
32
- * Get nodes by noun type
34
+ * Get nouns by noun type
33
35
  * @param nounType The noun type to filter by
34
- * @returns Promise that resolves to an array of nodes of the specified noun type
36
+ * @returns Promise that resolves to an array of nouns of the specified noun type
35
37
  */
36
38
  getNounsByNounType(nounType: string): Promise<HNSWNoun[]>;
37
- /**
38
- * Get all nodes from storage
39
- */
40
- getAllNouns(): Promise<HNSWNoun[]>;
41
- /**
42
- * Read a node from a file
43
- */
44
- private readNodeFromFile;
45
- /**
46
- * Delete a node from storage
47
- */
48
- deleteNoun(id: string): Promise<void>;
49
- /**
50
- * Save an edge to storage
51
- */
52
39
  saveVerb(verb: GraphVerb): Promise<void>;
53
40
  /**
54
- * Get an edge from storage
41
+ * Get a verb by its ID
42
+ * @param id The ID of the verb to retrieve
43
+ * @returns Promise that resolves to the verb or null if not found
55
44
  */
56
45
  getVerb(id: string): Promise<GraphVerb | null>;
57
- /**
58
- * Get all edges from storage
59
- */
60
- getAllVerbs(): Promise<GraphVerb[]>;
61
- /**
62
- * Get edges by source node ID
63
- */
64
46
  getVerbsBySource(sourceId: string): Promise<GraphVerb[]>;
65
47
  /**
66
- * Get edges by target node ID
48
+ * Get verbs by target ID
49
+ * @param targetId The target ID to filter by
50
+ * @returns Promise that resolves to an array of verbs with the specified target ID
67
51
  */
68
52
  getVerbsByTarget(targetId: string): Promise<GraphVerb[]>;
69
53
  /**
70
- * Get edges by type
54
+ * Get verbs by type
55
+ * @param type The verb type to filter by
56
+ * @returns Promise that resolves to an array of verbs of the specified type
71
57
  */
72
58
  getVerbsByType(type: string): Promise<GraphVerb[]>;
73
- /**
74
- * Delete an edge from storage
75
- */
59
+ getAllVerbs(): Promise<GraphVerb[]>;
76
60
  deleteVerb(id: string): Promise<void>;
77
61
  /**
78
- * Save metadata to storage
62
+ * Save metadata for an entity
63
+ * @param id The ID of the entity
64
+ * @param metadata The metadata to save
79
65
  */
80
66
  saveMetadata(id: string, metadata: any): Promise<void>;
81
67
  /**
82
- * Get metadata from storage
68
+ * Get metadata for an entity
69
+ * @param id The ID of the entity
70
+ * @returns Promise that resolves to the metadata or null if not found
83
71
  */
84
72
  getMetadata(id: string): Promise<any | null>;
85
- /**
86
- * Clear all data from storage
87
- */
88
73
  clear(): Promise<void>;
89
- /**
90
- * Ensure the storage adapter is initialized
91
- */
92
- private ensureInitialized;
93
- /**
94
- * Ensure a directory exists, creating it if necessary
95
- */
96
- private ensureDirectoryExists;
97
- /**
98
- * Delete a directory and all its contents recursively
99
- */
100
- private deleteDirectory;
101
- /**
102
- * Count the number of JSON files in a directory
103
- */
104
- private countFilesInDirectory;
105
- /**
106
- * Convert a Map to a plain object for serialization
107
- */
108
- private mapToObject;
109
- /**
110
- * Get the appropriate directory for a node based on its metadata
111
- */
112
- private getNodeDirectory;
113
- /**
114
- * Get information about storage usage and capacity
115
- */
116
74
  getStorageStatus(): Promise<{
117
75
  type: string;
118
76
  used: number;
@@ -1 +1 @@
1
- {"version":3,"file":"fileSystemStorage.d.ts","sourceRoot":"","sources":["../../src/storage/fileSystemStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAyBrE;;GAEG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,aAAa,CAAQ;gBAEjB,aAAa,CAAC,EAAE,MAAM;IAelC;;OAEG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAqHlC;;OAEG;IACU,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BpD;;OAEG;IACU,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAoG1D;;;;OAIG;IACU,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA2DtE;;OAEG;IACU,WAAW,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAkC/C;;OAEG;YACW,gBAAgB;IAsB9B;;OAEG;IACU,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyDlD;;OAEG;IACU,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBrD;;OAEG;IACU,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAsC3D;;OAEG;IACU,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAoBhD;;OAEG;IACU,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAYrE;;OAEG;IACU,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAYrE;;OAEG;IACU,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAY/D;;OAEG;IACU,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBlD;;OAEG;IACU,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBnE;;OAEG;IACU,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IAqBzD;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA2BnC;;OAEG;YACW,iBAAiB;IAM/B;;OAEG;YACW,qBAAqB;IASnC;;OAEG;YACW,eAAe;IA2B7B;;OAEG;YACW,qBAAqB;IAanC;;OAEG;IACH,OAAO,CAAC,WAAW;IAWnB;;OAEG;YACW,gBAAgB;IAiC9B;;OAEG;IACU,gBAAgB,IAAI,OAAO,CAAC;QACvC,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAC9B,CAAC;CA4JH"}
1
+ {"version":3,"file":"fileSystemStorage.d.ts","sourceRoot":"","sources":["../../src/storage/fileSystemStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AA4DrE;;GAEG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,aAAa,CAAQ;gBAEjB,aAAa,CAAC,EAAE,MAAM;IAelC;;OAEG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAoDpB,qBAAqB;IAWnC,OAAO,CAAC,WAAW;IA6BN,QAAQ,CACnB,IAAI,EAAE,QAAQ,GAAG;QAAE,QAAQ,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GAChD,OAAO,CAAC,IAAI,CAAC;IAQH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAyB7C,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBrC,WAAW,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IA+B/C;;;;OAIG;IACU,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA8CzD,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrD;;;;OAIG;IACU,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAc9C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAMrE;;;;OAIG;IACU,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAMrE;;;;OAIG;IACU,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAMlD,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAoBnC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAalD;;;;OAIG;IACU,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnE;;;;OAIG;IACU,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;IAc5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,gBAAgB,IAAI,OAAO,CAAC;QACvC,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAC9B,CAAC;CAyCH"}
@@ -3,8 +3,8 @@
3
3
  * This file exports type definitions for TensorFlow.js utilities
4
4
  */
5
5
  export interface TensorFlowUtilObject {
6
- isFloat32Array: (arr: unknown) => boolean;
7
- isTypedArray: (arr: unknown) => boolean;
6
+ isFloat32Array?: (arr: unknown) => boolean;
7
+ isTypedArray?: (arr: unknown) => boolean;
8
8
  [key: string]: unknown;
9
9
  }
10
10
  export interface PlatformNodeObject {
@@ -23,4 +23,12 @@ declare global {
23
23
  interface WorkerGlobalScope {
24
24
  importTensorFlow?: () => Promise<any>;
25
25
  }
26
+ var global: {
27
+ util?: TensorFlowUtilObject;
28
+ [key: string]: any;
29
+ };
30
+ var globalThis: {
31
+ util?: TensorFlowUtilObject;
32
+ [key: string]: any;
33
+ };
26
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tensorflowTypes.d.ts","sourceRoot":"","sources":["../../src/types/tensorflowTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;IACzC,YAAY,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;IACvC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAGD,MAAM,WAAW,kBAAkB;IACjC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;IAC1C,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;IACxC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAGD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,oBAAoB,CAAA;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAGD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;KACtC;IAED,UAAU,iBAAiB;QACzB,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;KACtC;CACF"}
1
+ {"version":3,"file":"tensorflowTypes.d.ts","sourceRoot":"","sources":["../../src/types/tensorflowTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;IAC1C,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;IAExC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAGD,MAAM,WAAW,kBAAkB;IACjC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;IAC1C,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAA;IAExC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAGD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,oBAAoB,CAAA;IAE3B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAGD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;KACtC;IAED,UAAU,iBAAiB;QACzB,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;KACtC;IAGD,IAAI,MAAM,EAAE;QACV,IAAI,CAAC,EAAE,oBAAoB,CAAA;QAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KACnB,CAAA;IAED,IAAI,UAAU,EAAE;QACd,IAAI,CAAC,EAAE,oBAAoB,CAAA;QAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KACnB,CAAA;CACF"}