all files / api/lib/get/ tag.js

100% Statements 13/13
100% Branches 6/6
100% Functions 0/0
100% Lines 10/10
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15         
'use strict';
 
const R = require('ramda');
let tagQuery = require('../../query/tag');
 
module.exports =  (db, articleId) => {
    if(R.isNil(articleId)) return Promise.resolve([]);
    const query = tagQuery(db, articleId);
    const meta = R.objOf('type', 'tag');
    return db.article_tag.findAll(query).then(arr => R.reduce((mem, articleTag) => {
        if (R.isNil(articleTag) || R.isNil(articleTag.tag)) return mem;
        mem.push(R.compose(R.pair(meta), R.prop('tag'))(articleTag));
        return mem;
    }, [], arr));
};