@@ -112,6 +112,10 @@ export async function activate(context: ExtensionContext) {
112112 label : ENTRY_OPTION . VIEW_LICENSE ,
113113 description : selectedEntry . github . license . name
114114 } ,
115+ ! ! selectedEntry . github . stats . dependencies && {
116+ label : ENTRY_OPTION . VIEW_DEPENDENCIES ,
117+ description : `$(package) ${ numberFormatter . format ( selectedEntry . github . stats . dependencies ) } ${ selectedEntry . github . stats . dependencies === 1 ? 'dependency' : 'dependencies' } `
118+ } ,
115119 { label : ENTRY_OPTION . VIEW_BUNDLEPHOBIA } ,
116120 { label : 'details' , kind : QuickPickItemKind . Separator } ,
117121 {
@@ -122,6 +126,10 @@ export async function activate(context: ExtensionContext) {
122126 label : ENTRY_OPTION . COMPATIBILITY ,
123127 description : compatibilityList . join ( ', ' )
124128 } ,
129+ selectedEntry . configPlugin && {
130+ label : ENTRY_OPTION . CONFIG_PLUGIN ,
131+ description : typeof selectedEntry . configPlugin === 'string' ? selectedEntry . configPlugin : 'included'
132+ } ,
125133 ...examplesActions ,
126134 { label : 'copy data' , kind : QuickPickItemKind . Separator } ,
127135 { label : ENTRY_OPTION . COPY_NAME } ,
@@ -207,6 +215,19 @@ export async function activate(context: ExtensionContext) {
207215 await openListWithSearch ( packagesPick ) ;
208216 break ;
209217 }
218+ case ENTRY_OPTION . VIEW_DEPENDENCIES : {
219+ env . openExternal ( Uri . parse ( `https://www.npmjs.com/package/${ selectedEntry . npmPkg } ?activeTab=dependencies` ) ) ;
220+ break ;
221+ }
222+ case ENTRY_OPTION . CONFIG_PLUGIN : {
223+ if ( typeof selectedEntry . configPlugin === 'string' ) {
224+ env . openExternal ( Uri . parse ( selectedEntry . configPlugin ) ) ;
225+ } else {
226+ const searchValue = deduplicateSearchTokens ( packagesPick . value , [ 'configPlugin' ] ) ;
227+ await openListWithSearch ( packagesPick , searchValue ) ;
228+ }
229+ break ;
230+ }
210231 }
211232
212233 optionPick . hide ( ) ;
0 commit comments