scripts/beforePluginInstallHook.js
function isInstallationAlreadyPerformed(ctx) {
  var pathToInstallFlag = path.join(ctx.opts.projectRoot, 'plugins', ctx.opts.plugin.id, INSTALLATION_FLAG_FILE_NAME);
  try {
    fs.accessSync(pathToInstallFlag, fs.F_OK);
    return true;
  } catch (err) {
    return false;
  }
}
function isInstallationAlreadyPerformed(ctx) {
  var pathToInstallFlag = path.join(ctx.opts.projectRoot, 'plugins', ctx.opts.plugin.id, INSTALLATION_FLAG_FILE_NAME);
  try {
    fs.accessSync(pathToInstallFlag, fs.F_OK);
    return true;
  } catch (err) {
    return false;
  }
}
function isInstallationAlreadyPerformed ( ctx ) { var pathToInstallFlag = path . join ( ctx . opts . projectRoot , 'plugins' , ctx . opts . plugin . id , INSTALLATION_FLAG_FILE_NAME ) ; try { fs . accessSync ( pathToInstallFlag , fs . F_OK ) ; return true ; } catch ( err ) { return false ; } }
region mark that we installed npm packages 
Check if we already executed this hook.

@param {Object} ctx - cordova context
@return {Boolean} true if already executed; otherwise - false
region mark that we installed npm packages Check if we already executed this hook .