UNPKG

is-graph-pointer

Version:
30 lines (29 loc) 946 B
export function isGraphPointer(arg) { return typeof arg === 'object' && !!arg && 'term' in arg && !!arg.term; } export function isResource(arg) { return isGraphPointer(arg) && (arg.term.termType === 'BlankNode' || arg.term.termType === 'NamedNode'); } export function isNamedNode(arg) { return isGraphPointer(arg) && arg.term.termType === 'NamedNode'; } export function isBlankNode(arg) { return isGraphPointer(arg) && arg.term.termType === 'BlankNode'; } export function isLiteral(arg, dtOrLang) { const itIsLiteral = isGraphPointer(arg) && arg.term.termType === 'Literal'; if (itIsLiteral && typeof dtOrLang === 'string') { return arg.term.language === dtOrLang; } if (itIsLiteral && typeof dtOrLang === 'object') { return arg.term.datatype.equals(dtOrLang); } return itIsLiteral; } export default { isGraphPointer, isResource, isNamedNode, isBlankNode, isLiteral, };