@@ -4,6 +4,7 @@ const a = require('array-tools')
44const testValue = require ( 'test-value' )
55const where = require ( 'filter-where' )
66const arrayify = require ( 'array-back' )
7+ const extract = require ( 'reduce-extract' )
78
89/**
910 * @module transform
@@ -277,7 +278,7 @@ function buildTodoList (doclet) {
277278 Combine @todo array with @done custom tags to make @todoList
278279 */
279280 if ( doclet . tags ) {
280- var done = a . extract ( doclet . tags , { title : 'done' } )
281+ var done = doclet . tags . reduce ( extract ( { title : 'done' } ) , [ ] )
281282 if ( ! doclet . tags . length ) delete doclet . tags
282283 todoList = todoList . concat ( done . map ( function ( task ) {
283284 return { done : true , task : task . value }
@@ -292,23 +293,23 @@ function buildTodoList (doclet) {
292293
293294function extractTypicalName ( doclet ) {
294295 if ( doclet . tags ) {
295- var typicalName = a . extract ( doclet . tags , { title : 'typicalname' } )
296+ var typicalName = doclet . tags . reduce ( extract ( { title : 'typicalname' } ) , [ ] )
296297 if ( typicalName . length ) doclet . typicalname = typicalName [ 0 ] . value
297298 }
298299 return doclet
299300}
300301
301302function extractCategory ( doclet ) {
302303 if ( doclet . tags ) {
303- var category = a . extract ( doclet . tags , { title : 'category' } )
304+ var category = doclet . tags . reduce ( extract ( { title : 'category' } ) , [ ] )
304305 if ( category . length ) doclet . category = category [ 0 ] . value
305306 }
306307 return doclet
307308}
308309
309310function extractChainable ( doclet ) {
310311 if ( doclet . tags ) {
311- var chainable = a . extract ( doclet . tags , { title : 'chainable' } )
312+ var chainable = doclet . tags . reduce ( extract ( { title : 'chainable' } ) , [ ] )
312313 if ( chainable . length ) doclet . chainable = true
313314 }
314315 return doclet
0 commit comments