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.
This commit is contained in:
David Snelling 2025-08-18 17:35:06 -07:00
commit f8c45f2d8d
448 changed files with 103294 additions and 0 deletions

161
dist/universal/path.js vendored Normal file
View file

@ -0,0 +1,161 @@
/**
* Universal Path implementation
* Browser: Manual path operations
* Node.js: Uses built-in path module
*/
import { isNode } from '../utils/environment.js';
let nodePath = null;
// Dynamic import for Node.js path (only in Node.js environment)
if (isNode()) {
try {
nodePath = await import('path');
}
catch {
// Ignore import errors in non-Node environments
}
}
/**
* Universal path operations
*/
export function join(...paths) {
if (nodePath) {
return nodePath.join(...paths);
}
// Browser fallback implementation
const parts = [];
for (const path of paths) {
if (path) {
parts.push(...path.split('/').filter(p => p));
}
}
return parts.join('/');
}
export function dirname(path) {
if (nodePath) {
return nodePath.dirname(path);
}
// Browser fallback implementation
const parts = path.split('/').filter(p => p);
if (parts.length <= 1)
return '.';
return parts.slice(0, -1).join('/');
}
export function basename(path, ext) {
if (nodePath) {
return nodePath.basename(path, ext);
}
// Browser fallback implementation
const parts = path.split('/');
let name = parts[parts.length - 1];
if (ext && name.endsWith(ext)) {
name = name.slice(0, -ext.length);
}
return name;
}
export function extname(path) {
if (nodePath) {
return nodePath.extname(path);
}
// Browser fallback implementation
const name = basename(path);
const lastDot = name.lastIndexOf('.');
return lastDot === -1 ? '' : name.slice(lastDot);
}
export function resolve(...paths) {
if (nodePath) {
return nodePath.resolve(...paths);
}
// Browser fallback implementation
let resolved = '';
let resolvedAbsolute = false;
for (let i = paths.length - 1; i >= -1 && !resolvedAbsolute; i--) {
const path = i >= 0 ? paths[i] : '/';
if (!path)
continue;
resolved = path + '/' + resolved;
resolvedAbsolute = path.charAt(0) === '/';
}
// Normalize the path
resolved = normalizeArray(resolved.split('/').filter(p => p), !resolvedAbsolute).join('/');
return (resolvedAbsolute ? '/' : '') + resolved;
}
export function relative(from, to) {
if (nodePath) {
return nodePath.relative(from, to);
}
// Browser fallback implementation
const fromParts = resolve(from).split('/').filter(p => p);
const toParts = resolve(to).split('/').filter(p => p);
let commonLength = 0;
for (let i = 0; i < Math.min(fromParts.length, toParts.length); i++) {
if (fromParts[i] === toParts[i]) {
commonLength++;
}
else {
break;
}
}
const upCount = fromParts.length - commonLength;
const upParts = new Array(upCount).fill('..');
const downParts = toParts.slice(commonLength);
return [...upParts, ...downParts].join('/');
}
export function isAbsolute(path) {
if (nodePath) {
return nodePath.isAbsolute(path);
}
// Browser fallback implementation
return path.charAt(0) === '/';
}
/**
* Normalize array helper function
*/
function normalizeArray(parts, allowAboveRoot) {
const res = [];
for (let i = 0; i < parts.length; i++) {
const p = parts[i];
if (!p || p === '.')
continue;
if (p === '..') {
if (res.length && res[res.length - 1] !== '..') {
res.pop();
}
else if (allowAboveRoot) {
res.push('..');
}
}
else {
res.push(p);
}
}
return res;
}
// Path separator (always use forward slash for consistency)
export const sep = '/';
export const delimiter = ':';
// POSIX path object for compatibility
export const posix = {
join,
dirname,
basename,
extname,
resolve,
relative,
isAbsolute,
sep: '/',
delimiter: ':'
};
// Default export
export default {
join,
dirname,
basename,
extname,
resolve,
relative,
isAbsolute,
sep,
delimiter,
posix
};
//# sourceMappingURL=path.js.map