@dpkit/core
Version:
Fast TypeScript data management framework built on top of the Data Package standard and Polars DataFrames
14 lines • 2.38 kB
JavaScript
import { getBasepath, saveDescriptor } from "../general/index.js";
import { denormalizeResource } from "./process/denormalize.js";
const CURRENT_PROFILE = "https://datapackage.org/profiles/2.0/dataresource.json";
/**
* Save a Resource to a file path
* Works in Node.js environments
*/
export async function saveResourceDescriptor(resource, options) {
const basepath = getBasepath(options.path);
const descriptor = denormalizeResource(resource, { basepath });
descriptor.$schema = descriptor.$schema ?? CURRENT_PROFILE;
await saveDescriptor(descriptor, { path: options.path });
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3Jlc291cmNlL3NhdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUVqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUU5RCxNQUFNLGVBQWUsR0FBRyx3REFBd0QsQ0FBQTtBQUVoRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLHNCQUFzQixDQUMxQyxRQUFrQixFQUNsQixPQUVDO0lBRUQsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUUxQyxNQUFNLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFBO0lBQzlELFVBQVUsQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDLE9BQU8sSUFBSSxlQUFlLENBQUE7SUFFMUQsTUFBTSxjQUFjLENBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFBO0FBQzFELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRCYXNlcGF0aCwgc2F2ZURlc2NyaXB0b3IgfSBmcm9tIFwiLi4vZ2VuZXJhbC9pbmRleC50c1wiXG5pbXBvcnQgdHlwZSB7IFJlc291cmNlIH0gZnJvbSBcIi4vUmVzb3VyY2UudHNcIlxuaW1wb3J0IHsgZGVub3JtYWxpemVSZXNvdXJjZSB9IGZyb20gXCIuL3Byb2Nlc3MvZGVub3JtYWxpemUudHNcIlxuXG5jb25zdCBDVVJSRU5UX1BST0ZJTEUgPSBcImh0dHBzOi8vZGF0YXBhY2thZ2Uub3JnL3Byb2ZpbGVzLzIuMC9kYXRhcmVzb3VyY2UuanNvblwiXG5cbi8qKlxuICogU2F2ZSBhIFJlc291cmNlIHRvIGEgZmlsZSBwYXRoXG4gKiBXb3JrcyBpbiBOb2RlLmpzIGVudmlyb25tZW50c1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2F2ZVJlc291cmNlRGVzY3JpcHRvcihcbiAgcmVzb3VyY2U6IFJlc291cmNlLFxuICBvcHRpb25zOiB7XG4gICAgcGF0aDogc3RyaW5nXG4gIH0sXG4pIHtcbiAgY29uc3QgYmFzZXBhdGggPSBnZXRCYXNlcGF0aChvcHRpb25zLnBhdGgpXG5cbiAgY29uc3QgZGVzY3JpcHRvciA9IGRlbm9ybWFsaXplUmVzb3VyY2UocmVzb3VyY2UsIHsgYmFzZXBhdGggfSlcbiAgZGVzY3JpcHRvci4kc2NoZW1hID0gZGVzY3JpcHRvci4kc2NoZW1hID8/IENVUlJFTlRfUFJPRklMRVxuXG4gIGF3YWl0IHNhdmVEZXNjcmlwdG9yKGRlc2NyaXB0b3IsIHsgcGF0aDogb3B0aW9ucy5wYXRoIH0pXG59XG4iXX0=