(vaultPath: string)
| 232 | const pathsCacheByVaultPath = new Map<string, Paths>() |
| 233 | |
| 234 | export function getPaths(vaultPath: string): Paths { |
| 235 | const cachedPaths = pathsCacheByVaultPath.get(vaultPath) |
| 236 | if (cachedPaths) { |
| 237 | return cachedPaths |
| 238 | } |
| 239 | |
| 240 | const codeVaultPath = resolveCodeVaultPath(vaultPath) |
| 241 | const metaDirPath = path.join(codeVaultPath, META_DIR_NAME) |
| 242 | |
| 243 | const paths: Paths = { |
| 244 | inboxDirPath: path.join(metaDirPath, INBOX_DIR_NAME), |
| 245 | metaDirPath, |
| 246 | statePath: path.join(metaDirPath, 'state.json'), |
| 247 | trashDirPath: path.join(metaDirPath, TRASH_DIR_NAME), |
| 248 | vaultPath: codeVaultPath, |
| 249 | } |
| 250 | |
| 251 | pathsCacheByVaultPath.set(vaultPath, paths) |
| 252 | return paths |
| 253 | } |
| 254 | |
| 255 | export function resetPathsCache(): void { |
| 256 | pathsCacheByVaultPath.clear() |
no test coverage detected