- Upgraded launch_from_cache to automatically trigger LibreOffice/AppleScript launchers after file copy. - Hardened expandPath to resolve [home] and [tmp] placeholders anywhere in strings via global regex. - Enhanced get-device-info telemetry to provide absolute home and tmp paths to the UI. - Exposed native:launch-presentation in preload and implemented explicit LibreOffice (--impress) support on Linux.
17 lines
542 B
TypeScript
17 lines
542 B
TypeScript
import * as os from 'os';
|
|
import * as path from 'path';
|
|
|
|
export function expandPath(filePath: string): string {
|
|
if (!filePath) return filePath;
|
|
// Resolve all instances of [home] and [tmp] using global regex
|
|
return filePath
|
|
.replace(/\[home\]/g, os.homedir())
|
|
.replace(/\[tmp\]/g, os.tmpdir());
|
|
}
|
|
|
|
export function getHashedPath(cacheRoot: string, hash: string): string {
|
|
const expandedRoot = expandPath(cacheRoot);
|
|
const subdirectory = hash.substring(0, 2);
|
|
return path.join(expandedRoot, subdirectory, `${hash}.file`);
|
|
}
|