@dpkit/zenodo
Version:
Fast TypeScript data management framework built on top of the Data Package standard and Polars DataFrames
18 lines • 2.49 kB
JavaScript
import { getFormat, getName } from "@dpkit/core";
export function convertResourceFromZenodo(zenodoResource) {
const path = convertPath(zenodoResource.links.self);
const resource = {
path,
name: getName(zenodoResource.key) ?? zenodoResource.id,
format: getFormat(zenodoResource.key),
bytes: zenodoResource.size,
hash: zenodoResource.checksum,
"zenodo:key": zenodoResource.key,
"zenodo:url": path,
};
return resource;
}
function convertPath(link) {
return link.replace("/api/", "/").replace(/\/content$/, "");
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVplbm9kby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Jlc291cmNlL2NvbnZlcnQvZnJvbVplbm9kby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUdoRCxNQUFNLFVBQVUseUJBQXlCLENBQUMsY0FBOEI7SUFDdEUsTUFBTSxJQUFJLEdBQUcsV0FBVyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7SUFFbkQsTUFBTSxRQUFRLEdBQUc7UUFDZixJQUFJO1FBQ0osSUFBSSxFQUFFLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksY0FBYyxDQUFDLEVBQUU7UUFDdEQsTUFBTSxFQUFFLFNBQVMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDO1FBQ3JDLEtBQUssRUFBRSxjQUFjLENBQUMsSUFBSTtRQUMxQixJQUFJLEVBQUUsY0FBYyxDQUFDLFFBQVE7UUFDN0IsWUFBWSxFQUFFLGNBQWMsQ0FBQyxHQUFHO1FBQ2hDLFlBQVksRUFBRSxJQUFJO0tBQ25CLENBQUE7SUFFRCxPQUFPLFFBQVEsQ0FBQTtBQUNqQixDQUFDO0FBRUQsU0FBUyxXQUFXLENBQUMsSUFBWTtJQUMvQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUE7QUFDN0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEZvcm1hdCwgZ2V0TmFtZSB9IGZyb20gXCJAZHBraXQvY29yZVwiXG5pbXBvcnQgdHlwZSB7IFplbm9kb1Jlc291cmNlIH0gZnJvbSBcIi4uL1Jlc291cmNlLnRzXCJcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRSZXNvdXJjZUZyb21aZW5vZG8oemVub2RvUmVzb3VyY2U6IFplbm9kb1Jlc291cmNlKSB7XG4gIGNvbnN0IHBhdGggPSBjb252ZXJ0UGF0aCh6ZW5vZG9SZXNvdXJjZS5saW5rcy5zZWxmKVxuXG4gIGNvbnN0IHJlc291cmNlID0ge1xuICAgIHBhdGgsXG4gICAgbmFtZTogZ2V0TmFtZSh6ZW5vZG9SZXNvdXJjZS5rZXkpID8/IHplbm9kb1Jlc291cmNlLmlkLFxuICAgIGZvcm1hdDogZ2V0Rm9ybWF0KHplbm9kb1Jlc291cmNlLmtleSksXG4gICAgYnl0ZXM6IHplbm9kb1Jlc291cmNlLnNpemUsXG4gICAgaGFzaDogemVub2RvUmVzb3VyY2UuY2hlY2tzdW0sXG4gICAgXCJ6ZW5vZG86a2V5XCI6IHplbm9kb1Jlc291cmNlLmtleSxcbiAgICBcInplbm9kbzp1cmxcIjogcGF0aCxcbiAgfVxuXG4gIHJldHVybiByZXNvdXJjZVxufVxuXG5mdW5jdGlvbiBjb252ZXJ0UGF0aChsaW5rOiBzdHJpbmcpIHtcbiAgcmV0dXJuIGxpbmsucmVwbGFjZShcIi9hcGkvXCIsIFwiL1wiKS5yZXBsYWNlKC9cXC9jb250ZW50JC8sIFwiXCIpXG59XG4iXX0=