Spaces:
Build error
Build error
| import path from "node:path"; | |
| import { | |
| expandHomePrefix, | |
| resolveDefaultConfigPath, | |
| resolveDefaultContextPath, | |
| resolvePaperclipInstanceId, | |
| } from "./home.js"; | |
| export interface DataDirOptionLike { | |
| dataDir?: string; | |
| config?: string; | |
| context?: string; | |
| instance?: string; | |
| } | |
| export interface DataDirCommandSupport { | |
| hasConfigOption?: boolean; | |
| hasContextOption?: boolean; | |
| } | |
| export function applyDataDirOverride( | |
| options: DataDirOptionLike, | |
| support: DataDirCommandSupport = {}, | |
| ): string | null { | |
| const rawDataDir = options.dataDir?.trim(); | |
| if (!rawDataDir) return null; | |
| const resolvedDataDir = path.resolve(expandHomePrefix(rawDataDir)); | |
| process.env.PAPERCLIP_HOME = resolvedDataDir; | |
| if (support.hasConfigOption) { | |
| const hasConfigOverride = Boolean(options.config?.trim()) || Boolean(process.env.PAPERCLIP_CONFIG?.trim()); | |
| if (!hasConfigOverride) { | |
| const instanceId = resolvePaperclipInstanceId(options.instance); | |
| process.env.PAPERCLIP_INSTANCE_ID = instanceId; | |
| process.env.PAPERCLIP_CONFIG = resolveDefaultConfigPath(instanceId); | |
| } | |
| } | |
| if (support.hasContextOption) { | |
| const hasContextOverride = Boolean(options.context?.trim()) || Boolean(process.env.PAPERCLIP_CONTEXT?.trim()); | |
| if (!hasContextOverride) { | |
| process.env.PAPERCLIP_CONTEXT = resolveDefaultContextPath(); | |
| } | |
| } | |
| return resolvedDataDir; | |
| } | |