feat(core): add Electron runtime, services, and app composition

This commit is contained in:
2026-02-22 21:43:43 -08:00
parent 448ce03fd4
commit d3fd47f0ec
562 changed files with 69719 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
import { ConfigValidationWarning, RawConfig, ResolvedConfig } from '../../types';
import { DEFAULT_CONFIG, deepCloneConfig } from '../definitions';
import { createWarningCollector } from '../warnings';
import { isObject } from './shared';
export interface ResolveContext {
src: Record<string, unknown>;
resolved: ResolvedConfig;
warn(path: string, value: unknown, fallback: unknown, message: string): void;
}
export type ResolveConfigApplier = (context: ResolveContext) => void;
export function createResolveContext(raw: RawConfig): {
context: ResolveContext;
warnings: ConfigValidationWarning[];
} {
const resolved = deepCloneConfig(DEFAULT_CONFIG);
const { warnings, warn } = createWarningCollector();
const src = isObject(raw) ? raw : {};
return {
context: {
src,
resolved,
warn,
},
warnings,
};
}