@valueflows/vf-graphql-holochain
Version:
GraphQL schema bindings for the Holochain implementation of ValueFlows
28 lines • 4.07 kB
JavaScript
import { getPaginatedCollection, pluralize, formatResItem, } from "../util.js";
import { addEntryToStore, updateLatestRevision, getLatestRevisionId } from "../store.js";
export async function getOne(cell, type, args) {
if (!args.id) {
return null;
}
const cachedRevision = getLatestRevisionId(args.id, 10);
if (cachedRevision) {
return cachedRevision;
}
console.log("getOne", type, args.id);
// const cached
const res = await cell.callZome({
zome_name: "hrea",
fn_name: "get_latest_rea_" + type,
payload: args.id,
});
const formatted = formatResItem(res, args.id);
if (formatted.revisionId) {
addEntryToStore(formatted.revisionId, formatted);
updateLatestRevision(formatted.id, formatted);
}
return formatted;
}
export async function getAll(cell, type, args) {
return await getPaginatedCollection(cell, "get_all_" + pluralize(type), "get_latest_rea_" + type, args);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9xdWVyaWVzL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRSxhQUFhLEdBQUcsTUFBTSxZQUFZLENBQUM7QUFDL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV6RixNQUFNLENBQUMsS0FBSyxVQUFVLE1BQU0sQ0FBQyxJQUFTLEVBQUUsSUFBWSxFQUFFLElBQVM7SUFDM0QsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNYLE9BQU8sSUFBSSxDQUFBO0lBQ2YsQ0FBQztJQUNELE1BQU0sY0FBYyxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDdkQsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUNqQixPQUFPLGNBQWMsQ0FBQTtJQUN6QixDQUFDO0lBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUNwQyxlQUFlO0lBQ2YsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzVCLFNBQVMsRUFBRSxNQUFNO1FBQ2pCLE9BQU8sRUFBRSxpQkFBaUIsR0FBRyxJQUFJO1FBQ2pDLE9BQU8sRUFBRSxJQUFJLENBQUMsRUFBRTtLQUNuQixDQUFDLENBQUE7SUFDRixNQUFNLFNBQVMsR0FBRyxhQUFhLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUM3QyxJQUFJLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUN2QixlQUFlLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQTtRQUNoRCxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQ2pELENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQTtBQUNwQixDQUFDO0FBRUQsTUFBTSxDQUFDLEtBQUssVUFBVSxNQUFNLENBQUMsSUFBUyxFQUFFLElBQVksRUFBRSxJQUFTO0lBQzNELE9BQU8sTUFBTSxzQkFBc0IsQ0FDL0IsSUFBSSxFQUNKLFVBQVUsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQzVCLGlCQUFpQixHQUFHLElBQUksRUFDeEIsSUFBSSxDQUNQLENBQUE7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0UGFnaW5hdGVkQ29sbGVjdGlvbiwgcGx1cmFsaXplLCBmb3JtYXRSZXNJdGVtLCB9IGZyb20gXCIuLi91dGlsLmpzXCI7XG5pbXBvcnQgeyBhZGRFbnRyeVRvU3RvcmUsIHVwZGF0ZUxhdGVzdFJldmlzaW9uLCBnZXRMYXRlc3RSZXZpc2lvbklkIH0gZnJvbSBcIi4uL3N0b3JlLmpzXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRPbmUoY2VsbDogYW55LCB0eXBlOiBzdHJpbmcsIGFyZ3M6IGFueSkge1xuICAgIGlmICghYXJncy5pZCkge1xuICAgICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgICBjb25zdCBjYWNoZWRSZXZpc2lvbiA9IGdldExhdGVzdFJldmlzaW9uSWQoYXJncy5pZCwgMTApXG4gICAgaWYgKGNhY2hlZFJldmlzaW9uKSB7XG4gICAgICAgIHJldHVybiBjYWNoZWRSZXZpc2lvblxuICAgIH1cbiAgICBjb25zb2xlLmxvZyhcImdldE9uZVwiLCB0eXBlLCBhcmdzLmlkKVxuICAgIC8vIGNvbnN0IGNhY2hlZFxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IGNlbGwuY2FsbFpvbWUoe1xuICAgICAgICB6b21lX25hbWU6IFwiaHJlYVwiLFxuICAgICAgICBmbl9uYW1lOiBcImdldF9sYXRlc3RfcmVhX1wiICsgdHlwZSxcbiAgICAgICAgcGF5bG9hZDogYXJncy5pZCxcbiAgICB9KVxuICAgIGNvbnN0IGZvcm1hdHRlZCA9IGZvcm1hdFJlc0l0ZW0ocmVzLCBhcmdzLmlkKVxuICAgIGlmIChmb3JtYXR0ZWQucmV2aXNpb25JZCkge1xuICAgICAgICBhZGRFbnRyeVRvU3RvcmUoZm9ybWF0dGVkLnJldmlzaW9uSWQsIGZvcm1hdHRlZClcbiAgICAgICAgdXBkYXRlTGF0ZXN0UmV2aXNpb24oZm9ybWF0dGVkLmlkLCBmb3JtYXR0ZWQpXG4gICAgfVxuICAgIHJldHVybiBmb3JtYXR0ZWRcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEFsbChjZWxsOiBhbnksIHR5cGU6IHN0cmluZywgYXJnczogYW55KSB7XG4gICAgcmV0dXJuIGF3YWl0IGdldFBhZ2luYXRlZENvbGxlY3Rpb24oXG4gICAgICAgIGNlbGwsIFxuICAgICAgICBcImdldF9hbGxfXCIgKyBwbHVyYWxpemUodHlwZSksIFxuICAgICAgICBcImdldF9sYXRlc3RfcmVhX1wiICsgdHlwZSxcbiAgICAgICAgYXJnc1xuICAgIClcbn0iXX0=