o id@sBddlZddlmZmZmZGdddeeZGdddeZdS)N)PluginIndependentPlugin PluginOptc@s@eZdZdZdZdZeddeddgZdZ dd d Z d d Z d S)Npmz&Information from available npm modulesnpm)system project_pathz+Collect npm modules of project at this path)defaultval_typedesc)rNcCs|j||d|ddS)NF)suggest_filenamestderrrunat)add_cmd_output)selfcmdfilenameworking_directoryr8/usr/lib/python3/dist-packages/sos/report/plugins/npm.py_get_npm_outputs  zNpm._get_npm_outputcCs`|dr"tjtj|d}|jdd|d|jdd|d|dd|dd dS) Nrz npm ls --jsonnpm_ls_project)rznpm config list -lnpm_config_list_projectznpm ls -g --json npm_ls_globalnpm_config_list_global) get_optionospathabspath expanduserr)rrrrrsetup%s   z Npm.setup)N) __name__ __module__ __qualname__ short_desc plugin_nameprofilesrstr option_listpackagesrr!rrrrrs  rc@seZdZdZdZdS) NpmViaNodeJSzG some distribution methods don't provide 'npm' via npm package )nodejsN)r"r#r$__doc__r*rrrrr+3sr+)rsos.report.pluginsrrrrr+rrrrs $