brainy/dist/unified.js
David Snelling f8c45f2d8d Initial commit: Brainy - Multi-Dimensional AI Database
Open source vector database with HNSW indexing, graph relationships,
and metadata facets. Features CLI with professional augmentation registry
integration for discovering extensions and capabilities.
2025-08-18 17:35:06 -07:00

57 lines
No EOL
2.1 KiB
JavaScript

/**
* Unified entry point for Brainy
* This file exports everything from index.ts
* Environment detection is handled here and made available to all components
*/
// CRITICAL: The TensorFlow.js environment patch is now centralized in setup.ts
// We import setup.ts below which applies the necessary patches
// CRITICAL: Import setup.js first to ensure TensorFlow.js environment patching
// This MUST be the first import to prevent race conditions with TensorFlow.js initialization
// Moving or removing this import will cause errors like "TextEncoder is not a constructor"
// when the package is used in Node.js environments
//
// The setup.js file applies a patch that ensures TextEncoder/TextDecoder are properly
// available to TensorFlow.js before it initializes its platform detection
import './setup.js';
// Import environment detection functions
import { isBrowser, isNode, isWebWorker, isThreadingAvailable, isThreadingAvailableAsync, areWorkerThreadsAvailable } from './utils/environment.js';
// Export environment information with lazy evaluation
export const environment = {
get isBrowser() {
return isBrowser();
},
get isNode() {
return isNode();
},
get isServerless() {
return !isBrowser() && !isNode();
},
isWebWorker: function () {
return isWebWorker();
},
get isThreadingAvailable() {
return isThreadingAvailable();
},
isThreadingAvailableAsync: function () {
return isThreadingAvailableAsync();
},
areWorkerThreadsAvailable: function () {
return areWorkerThreadsAvailable();
}
};
// Make environment information available globally
if (typeof globalThis !== 'undefined') {
;
globalThis.__ENV__ = environment;
}
// Log the detected environment
console.log(`Brainy running in ${environment.isBrowser
? 'browser'
: environment.isNode
? 'Node.js'
: 'serverless/unknown'} environment`);
// Re-export everything from index.ts
export * from './index.js';
// Export the TensorFlow patch function for testing and manual use
export { applyTensorFlowPatch } from './utils/textEncoding.js';
//# sourceMappingURL=unified.js.map