UNPKG

@dpkit/file

Version:

Fast TypeScript data management framework built on top of the Data Package standard and Polars DataFrames

18 lines 2.44 kB
import { isRemotePath } from "@dpkit/core"; import { copyFile } from "./copy.js"; import { getTempFilePath } from "./temp.js"; export async function prefetchFiles(path) { if (!path) return []; const paths = Array.isArray(path) ? path : [path]; const newPaths = await Promise.all(paths.map(prefetchFile)); return newPaths; } export async function prefetchFile(path) { if (!isRemotePath(path)) return path; const newPath = getTempFilePath(); await copyFile({ sourcePath: path, targetPath: newPath }); return newPath; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9maWxlL2ZldGNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDMUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUNwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRTNDLE1BQU0sQ0FBQyxLQUFLLFVBQVUsYUFBYSxDQUFDLElBQXdCO0lBQzFELElBQUksQ0FBQyxJQUFJO1FBQUUsT0FBTyxFQUFFLENBQUE7SUFDcEIsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ2pELE1BQU0sUUFBUSxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUE7SUFDM0QsT0FBTyxRQUFRLENBQUE7QUFDakIsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsWUFBWSxDQUFDLElBQVk7SUFDN0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFBRSxPQUFPLElBQUksQ0FBQTtJQUNwQyxNQUFNLE9BQU8sR0FBRyxlQUFlLEVBQUUsQ0FBQTtJQUNqQyxNQUFNLFFBQVEsQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUE7SUFDekQsT0FBTyxPQUFPLENBQUE7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUmVtb3RlUGF0aCB9IGZyb20gXCJAZHBraXQvY29yZVwiXG5pbXBvcnQgeyBjb3B5RmlsZSB9IGZyb20gXCIuL2NvcHkudHNcIlxuaW1wb3J0IHsgZ2V0VGVtcEZpbGVQYXRoIH0gZnJvbSBcIi4vdGVtcC50c1wiXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcmVmZXRjaEZpbGVzKHBhdGg/OiBzdHJpbmcgfCBzdHJpbmdbXSkge1xuICBpZiAoIXBhdGgpIHJldHVybiBbXVxuICBjb25zdCBwYXRocyA9IEFycmF5LmlzQXJyYXkocGF0aCkgPyBwYXRoIDogW3BhdGhdXG4gIGNvbnN0IG5ld1BhdGhzID0gYXdhaXQgUHJvbWlzZS5hbGwocGF0aHMubWFwKHByZWZldGNoRmlsZSkpXG4gIHJldHVybiBuZXdQYXRoc1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlZmV0Y2hGaWxlKHBhdGg6IHN0cmluZykge1xuICBpZiAoIWlzUmVtb3RlUGF0aChwYXRoKSkgcmV0dXJuIHBhdGhcbiAgY29uc3QgbmV3UGF0aCA9IGdldFRlbXBGaWxlUGF0aCgpXG4gIGF3YWl0IGNvcHlGaWxlKHsgc291cmNlUGF0aDogcGF0aCwgdGFyZ2V0UGF0aDogbmV3UGF0aCB9KVxuICByZXR1cm4gbmV3UGF0aFxufVxuIl19