@@ -354,52 +354,60 @@ Api.prototype.addPodSpecs = function (plugin, podSpecs, frameworkPods, installOp
354
354
events . emit ( 'verbose' , 'Adding pods since the plugin contained <podspecs>' ) ;
355
355
podSpecs . forEach ( obj => {
356
356
// declarations
357
- Object . keys ( obj . declarations ) . forEach ( key => {
358
- if ( obj . declarations [ key ] === 'true' ) {
359
- const declaration = Podfile . proofDeclaration ( key ) ;
357
+ if ( obj . declarations ) {
358
+ Object . keys ( obj . declarations ) . forEach ( key => {
359
+ if ( obj . declarations [ key ] === 'true' ) {
360
+ const declaration = Podfile . proofDeclaration ( key ) ;
361
+ const podJson = {
362
+ declaration
363
+ } ;
364
+ const val = podsjsonFile . getDeclaration ( declaration ) ;
365
+ if ( val ) {
366
+ podsjsonFile . incrementDeclaration ( declaration ) ;
367
+ } else {
368
+ podJson . count = 1 ;
369
+ podsjsonFile . setJsonDeclaration ( declaration , podJson ) ;
370
+ podfileFile . addDeclaration ( podJson . declaration ) ;
371
+ }
372
+ }
373
+ } ) ;
374
+ }
375
+
376
+ // sources
377
+ if ( obj . sources ) {
378
+ Object . keys ( obj . sources ) . forEach ( key => {
360
379
const podJson = {
361
- declaration
380
+ source : obj . sources [ key ] . source
362
381
} ;
363
- const val = podsjsonFile . getDeclaration ( declaration ) ;
382
+ const val = podsjsonFile . getSource ( key ) ;
364
383
if ( val ) {
365
- podsjsonFile . incrementDeclaration ( declaration ) ;
384
+ podsjsonFile . incrementSource ( key ) ;
366
385
} else {
367
386
podJson . count = 1 ;
368
- podsjsonFile . setJsonDeclaration ( declaration , podJson ) ;
369
- podfileFile . addDeclaration ( podJson . declaration ) ;
387
+ podsjsonFile . setJsonSource ( key , podJson ) ;
388
+ podfileFile . addSource ( podJson . source ) ;
370
389
}
371
- }
372
- } ) ;
373
- // sources
374
- Object . keys ( obj . sources ) . forEach ( key => {
375
- const podJson = {
376
- source : obj . sources [ key ] . source
377
- } ;
378
- const val = podsjsonFile . getSource ( key ) ;
379
- if ( val ) {
380
- podsjsonFile . incrementSource ( key ) ;
381
- } else {
382
- podJson . count = 1 ;
383
- podsjsonFile . setJsonSource ( key , podJson ) ;
384
- podfileFile . addSource ( podJson . source ) ;
385
- }
386
- } ) ;
390
+ } ) ;
391
+ }
392
+
387
393
// libraries
388
- Object . keys ( obj . libraries ) . forEach ( key => {
389
- const podJson = Object . assign ( { } , obj . libraries [ key ] ) ;
390
- if ( podJson . spec ) {
391
- podJson . spec = getVariableSpec ( podJson . spec , installOptions ) ;
392
- }
393
- const val = podsjsonFile . getLibrary ( key ) ;
394
- if ( val ) {
395
- events . emit ( 'warn' , `${ plugin . id } depends on ${ podJson . name } , which may conflict with another plugin. ${ podJson . name } @${ val . spec } is already installed and was not overwritten.` ) ;
396
- podsjsonFile . incrementLibrary ( key ) ;
397
- } else {
398
- podJson . count = 1 ;
399
- podsjsonFile . setJsonLibrary ( key , podJson ) ;
400
- podfileFile . addSpec ( podJson . name , podJson ) ;
401
- }
402
- } ) ;
394
+ if ( obj . libraries ) {
395
+ Object . keys ( obj . libraries ) . forEach ( key => {
396
+ const podJson = Object . assign ( { } , obj . libraries [ key ] ) ;
397
+ if ( podJson . spec ) {
398
+ podJson . spec = getVariableSpec ( podJson . spec , installOptions ) ;
399
+ }
400
+ const val = podsjsonFile . getLibrary ( key ) ;
401
+ if ( val ) {
402
+ events . emit ( 'warn' , `${ plugin . id } depends on ${ podJson . name } , which may conflict with another plugin. ${ podJson . name } @${ val . spec } is already installed and was not overwritten.` ) ;
403
+ podsjsonFile . incrementLibrary ( key ) ;
404
+ } else {
405
+ podJson . count = 1 ;
406
+ podsjsonFile . setJsonLibrary ( key , podJson ) ;
407
+ podfileFile . addSpec ( podJson . name , podJson ) ;
408
+ }
409
+ } ) ;
410
+ }
403
411
} ) ;
404
412
}
405
413
0 commit comments