UNPKG

@leosprograms/vf-graphql-holochain

Version:

GraphQL schema bindings for the Holochain implementation of ValueFlows

36 lines (31 loc) 995 B
/** * Resolver callbacks for measurement struct sub-fields * * @package: HoloREA * @since: 2019-12-24 */ import { DNAIdMappings, DEFAULT_VF_MODULES, VfModule, ById, AddressableIdentifier } from '../types.js' import { mapZomeFn } from '../connection.js' import { Maybe, Measure, Unit, UnitResponse, } from '@leosprograms/vf-graphql' export default (enabledVFModules: VfModule[] = DEFAULT_VF_MODULES, dnaConfig: DNAIdMappings, conductorUri: string) => { const readUnit = mapZomeFn<ById, UnitResponse>(dnaConfig, conductorUri, 'combined', 'unit', 'get_unit') return { hasUnitId: async (record: { hasUnit: AddressableIdentifier }): Promise<Maybe<string>> => { if (!record.hasUnit) { return null } return record.hasUnit }, hasUnit: async (record: { hasUnit: AddressableIdentifier }): Promise<Maybe<Unit>> => { if (!record.hasUnit) { return null } return (await readUnit({ id: record.hasUnit })).unit }, } }