11'use strict' ;
22
3- var _createClass = function ( ) { function defineProperties ( target , props ) { for ( var i = 0 ; i < props . length ; i ++ ) { var descriptor = props [ i ] ; descriptor . enumerable = descriptor . enumerable || false ; descriptor . configurable = true ; if ( "value" in descriptor ) descriptor . writable = true ; Object . defineProperty ( target , descriptor . key , descriptor ) ; } } return function ( Constructor , protoProps , staticProps ) { if ( protoProps ) defineProperties ( Constructor . prototype , protoProps ) ; if ( staticProps ) defineProperties ( Constructor , staticProps ) ; return Constructor ; } ; } ( ) ;
4-
5- var _typeof = typeof Symbol === "function" && typeof Symbol . iterator === "symbol" ? function ( obj ) { return typeof obj ; } : function ( obj ) { return obj && typeof Symbol === "function" && obj . constructor === Symbol ? "symbol" : typeof obj ; } ;
6-
7- function _classCallCheck ( instance , Constructor ) { if ( ! ( instance instanceof Constructor ) ) { throw new TypeError ( "Cannot call a class as a function" ) ; } }
8-
9- var a = require ( 'array-tools' ) ;
3+ var sortArray = require ( 'sort-array' ) ;
104var fileSet = require ( 'file-set' ) ;
115var Transform = require ( 'stream' ) . Transform ;
126var transform = require ( './transform' ) ;
@@ -15,66 +9,23 @@ var assert = require('assert');
159var connect = require ( 'stream-connect' ) ;
1610var fs = require ( 'fs' ) ;
1711
18- module . exports = jsdocParse ;
19-
20- function jsdocParse ( options ) {
21- options = new ParseOptions ( options ) ;
22- var jsdocInput = undefined ;
23- try {
24- var _ret = function ( ) {
25- options . validate ( ) ;
26-
27- var outputStream = collectJson ( function ( data ) {
28- return applyOptions ( data , options ) ;
29- } ) ;
30- var transformStream = connect ( transform ( ) , outputStream ) ;
31-
32- if ( options . src && options . files . length ) {
33- jsdocInput = concatJsonFileArrays ( options . files ) ;
34- process . nextTick ( function ( ) {
35- transformStream . end ( JSON . stringify ( jsdocInput ) ) ;
36- } ) ;
37- }
38- return {
39- v : transformStream
40- } ;
41- } ( ) ;
12+ exports . parse = parse ;
13+ exports . getStats = getStats ;
4214
43- if ( ( typeof _ret === 'undefined' ? 'undefined' : _typeof ( _ret ) ) === "object" ) return _ret . v ;
44- } catch ( err ) {
45- var _ret2 = function ( ) {
46- var output = new Transform ( ) ;
47- process . nextTick ( function ( ) {
48- output . emit ( 'error' , err ) ;
49- } ) ;
50- return {
51- v : output
52- } ;
53- } ( ) ;
15+ function parse ( jsdocExplainOutput , options ) {
16+ var data = transform ( jsdocExplainOutput ) ;
5417
55- if ( ( typeof _ret2 === 'undefined' ? 'undefined' : _typeof ( _ret2 ) ) === "object" ) return _ret2 . v ;
56- }
57- }
58-
59- function concatJsonFileArrays ( files ) {
60- return files . reduce ( function ( prev , curr ) {
61- var fileContent = fs . readFileSync ( curr , 'utf8' ) ;
62- try {
63- var data = JSON . parse ( fileContent ) ;
64- return prev . concat ( data ) ;
65- } catch ( err ) {
66- err . message += ' input: ' + fileContent ;
67- throw err ;
68- }
69- } , [ ] ) ;
18+ return data ;
7019}
7120
7221function applyOptions ( data , options ) {
7322 if ( options . stats ) {
7423 return JSON . stringify ( getStats ( data ) , null , ' ' ) + '\n' ;
7524 } else {
7625 data = data . filter ( function ( item ) {
77- var parent = a . findWhere ( data , { id : item . memberof } ) || { } ;
26+ var parent = data . find ( function ( d ) {
27+ return d . id === item . memberof ;
28+ } ) || { } ;
7829 if ( item . ignore || parent . ignore ) {
7930 return false ;
8031 } else if ( ! options . private && item . access === 'private' || parent . access === 'private' ) {
@@ -111,40 +62,6 @@ function sort(array, sortBy) {
11162 if ( ! sortBy ) {
11263 return array ;
11364 } else {
114- return a . sortBy ( array , sortBy , order ) ;
65+ return sortArray ( array , sortBy , order ) ;
11566 }
116- }
117-
118- var ParseOptions = function ( ) {
119- function ParseOptions ( options ) {
120- _classCallCheck ( this , ParseOptions ) ;
121-
122- this . src = null ;
123-
124- this . private = false ;
125-
126- this . stats ;
127-
128- this . html = false ;
129-
130- this [ 'sort-by' ] = [ 'scope' , 'category' , 'kind' , 'order' ] ;
131-
132- Object . assign ( this , options ) ;
133- if ( this . src ) {
134- this . fileSet = fileSet ( this . src ) ;
135- this . files = this . fileSet . files ;
136- }
137- }
138-
139- _createClass ( ParseOptions , [ {
140- key : 'validate' ,
141- value : function validate ( ) {
142- if ( this . src ) {
143- assert . ok ( this . fileSet . files . length , 'Please specify valid input files.' ) ;
144- assert . ok ( ! ( this . fileSet . notExisting && this . fileSet . notExisting . length ) , 'These files do not exist: ' + this . fileSet . notExisting . join ( ', ' ) ) ;
145- }
146- }
147- } ] ) ;
148-
149- return ParseOptions ;
150- } ( ) ;
67+ }
0 commit comments