tarifa
Version:
Your friendly toolchain for mobile app development on top of Apache Cordova
29 lines (23 loc) • 1.09 kB
JavaScript
var Q = require('q'),
path = require('path'),
fs = require('fs'),
plist = require('plist'),
pathHelper = require('../../../../../helper/path'),
collectionsHelper = require('../../../../../helper/collections'),
log = require('../../../../../helper/log');
module.exports = function (msg) {
var local = msg.localSettings,
cordova = local.cordova || {},
conf = local.configurations.ios[msg.configuration],
settings = (conf.cordova && conf.cordova.settings)
|| (cordova.settings && cordova.settings.ios);
if(!settings) return Q.resolve(msg);
var name = msg.localSettings.name,
plistFileName = name + '-Info.plist',
plistPath = path.join(pathHelper.app(), 'platforms', 'ios', name, plistFileName),
plistObj = plist.parse(fs.readFileSync(plistPath, 'utf-8')),
newPlistObj = collectionsHelper.mergeObject(plistObj, settings, true);
fs.writeFileSync(plistPath, plist.build(newPlistObj).toString());
log.send('success', '[ios] extending project plist');
return Q.resolve(msg);
};