/*
	 * Check which folders exists based on the file path
	 */
    checkFolderExists (folderName: string) {
		let getFolderUrl = util.format("/_api/web/GetFolderByServerRelativeUrl(@FolderName)?@FolderName='%s'", encodeURIComponent(folderName));
        let header = {
			headers: {
				"Accept": "application/json;odata=verbose",
                "content-type":"application/json;odata=verbose",
				"X-RequestDigest": this.digest
			},
			json: true
		};
		let endPoint = this.config.site + getFolderUrl;
		if(this.config.verbose){
			gutil.log("INFO: Checking folder exists " + endPoint);
		}

        return new Promise<any>((resolve, reject) => {
			this.spr.get(endPoint, header)
                .then(success => {
                    if(this.config.verbose) {
                        gutil.log('INFO: Folder ' + folderName + ' exists');
                    }
					// Temp cache the processed folder
					this.cacheLocation(folderName);
                    resolve(success);
                })
			    .catch(err => {
                    gutil.log("INFO: Folder '" + folderName + "' doesn't exist and will be created");
                    resolve(err);
                }
            );
		});
	}
示例#2
0
 webpack(webpackConfig, (err, stats) => {
   if (err) {
     throw new gutil.PluginError('webpack', err)
   }
   watch ? null : gutil.log(gutil.colors.cyan('[webpack]', stats.toString()))
   callback ? callback(resolve) : resolve()
 })
export = (done: any) => {
  // Note: dirty hack until we're able to set config easier
  modifyFile(join(Config.TMP_DIR, 'tsconfig.json'), (content: string) => {
    const parsed = JSON.parse(content);
    const path = join(
      Config.PROJECT_ROOT,
      Config.TOOLS_DIR,
      'manual_typings',
      'project'
    );
    parsed.files = parsed.files || [];
    parsed.files = parsed.files.concat(
      readdirSync(path)
        .filter(f => f.endsWith('d.ts'))
        .map(f => join(path, f))
    );
    parsed.files = parsed.files.filter(
      (f: string, i: number) => parsed.files.indexOf(f) === i
    );
    parsed.files.push(join(Config.BOOTSTRAP_DIR, 'main.ts'));
    return JSON.stringify(parsed, null, 2);
  });
  const args = argv as any;

  // If a translation, tell the compiler
  if (args.lang) {
    let i18nFilePath = `${Config.LOCALE_DEST}/messages.${args.lang}.xlf`;
    let isExists = existsSync(i18nFilePath);
    if (isExists) {
      args['i18nFile'] = i18nFilePath;
      args['locale'] = args.lang;
      args['i18nFormat'] = 'xlf';
    } else {
      util.log(util.colors.gray('Translation file is not found'), util.colors.yellow(i18nFilePath));
      util.log(util.colors.gray(`Use 'npm run i18n' command to create your translation file`));
    }
  }

  const cliOptions = new NgcCliOptions(args);
  main(Config.TMP_DIR, cliOptions, codegen)
    .then(done)
    .catch(e => {
      console.error(e.stack);
      console.error('Compilation failed');
      process.exit(1);
    });
};
				.then(res => {
					// Temp cache the processed folder
					this.cacheLocation(pathArray[0]);
					if (this.config.verbose) {
						gutil.log('INFO: Folder created:', pathArray[0]);
					}
					return this.createPathRecursive(pathArray.slice(1, pathArray.length), deferred);
				})
                .then(success => {
                    if(this.config.verbose) {
                        gutil.log('INFO: Folder ' + folderName + ' exists');
                    }
					// Temp cache the processed folder
					this.cacheLocation(folderName);
                    resolve(success);
                })
 .forEach((key: string) => {
   if (key === 'lang') {
     const lang: string = namedArgs[key] as string;
     const i18nFilePath = `${Config.LOCALE_DEST}/messages.${lang}.xlf`;
     const isExists = existsSync(i18nFilePath);
     if (isExists) {
       args.push('--i18nFile', i18nFilePath);
       args.push('--locale', lang);
       args.push('--i18nFormat', 'xlf');
     } else {
       util.log(util.colors.gray('Translation file is not found'), util.colors.yellow(i18nFilePath));
       util.log(util.colors.gray(`Use 'npm run i18n' command to create your translation file`));
     }
   } else {
     args.push('--' + key, namedArgs[key]);
   }
 });
示例#7
0
文件: gulpfile.ts 项目: gburgett/blog
 buildHugo(err => {
   if(err){
     gutil.log(gutil.colors.red('[hugo] Error building hugo: ') + err)
     browserSync.notify("Hugo build failed :(");
   } else {
     browserSync.reload();
   }
 })
示例#8
0
文件: gulpfile.ts 项目: gburgett/blog
 fs.remove(path, err => {
   if (err) {
     gutil.log('Error cleaning ', path, err.message, err.code, err.errno)
     reject(err)
     return
   }
   resolve()
 })
示例#9
0
 fs.remove('static/.640x/images', err => {
   if (err) {
     gutil.log('Error cleaning ', path, err.message, err.code, err.errno)
     cb(err)
     return
   }
   cb()
 })
示例#10
0
function onStart(): void {
	if (count++ > 0) {
		return;
	}

	startTime = new Date().getTime();
	util.log(`Starting ${util.colors.green('compilation')}...`);
}