UNPKG

@microsoft/windows-admin-center-sdk

Version:

Microsoft - Windows Admin Center Shell

1 lines 3.18 kB
{"version":3,"sources":["../../../packages/tools/code-formatter/utilities.ts"],"names":[],"mappings":"AAIA,sBAAc,SAAS,CAAC;IAMpB,SAAgB,QAAQ,IAAI;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAA;KAAE,CAuBhE;IAED,SAAgB,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,GAAG,IAAI,CAMnE;IAED,SAAgB,EAAE,CAAC,EAAE,KAAA,EAAE,IAAI,KAAA,EAAE,OAAO,KAAK,EAAE,WAAW,MAAO,QA0B5D;CACJ","file":"utilities.d.ts","sourcesContent":["import childProcess from 'child_process';\r\nimport log from 'fancy-log';\r\nimport { argv as values } from 'yargs';\r\n\r\nexport module Utilities {\r\n\r\n function toBoolean(value: any, defaultValue: boolean = false) {\r\n return defaultValue ? value !== false : !!value;\r\n }\r\n\r\n export function gulpArgv(): { [index: string]: boolean | string } {\r\n return {\r\n prod: toBoolean(values['prod']),\r\n verbose: toBoolean(values['verbose']),\r\n junit: toBoolean(values['junit']),\r\n expandCss: toBoolean(values['expandcss']),\r\n target: values['target'] as string,\r\n debug: toBoolean(values['debug']),\r\n styles: toBoolean(values['styles']),\r\n resources: toBoolean(values['resources']),\r\n core: toBoolean(values['core']),\r\n angular: toBoolean(values['angular']),\r\n app: toBoolean(values['app']),\r\n devGuide: toBoolean(values['devguide']),\r\n fix: toBoolean(values['fix']),\r\n version: values['V'] as string,\r\n icon: values['icon'] as string,\r\n license: values['license'] as string,\r\n company: values['company'] as string,\r\n copyright: values['copyright'] as string,\r\n iconUrl: values['iconUrl'] as string,\r\n targetPath: values['targetPath'] as string\r\n };\r\n }\r\n\r\n export function exportFunctions(context: any, gulpModule: any): void {\r\n for (const func in gulpModule) {\r\n if (gulpModule.hasOwnProperty(func)) {\r\n context[func] = gulpModule[func];\r\n }\r\n }\r\n }\r\n\r\n export function ng(cb, args, options = {}, codeHandler = null) {\r\n log('ng', args.join(' '));\r\n const errors = [];\r\n const cmd = childProcess.spawn('ng.cmd', args, { ...options, shell: true });\r\n cmd.stdout.on('data', (data) => { log(data.toString().trim()); });\r\n cmd.stderr.on('data', (data) => {\r\n const message = data.toString().trim();\r\n if (message.toUpperCase().startsWith('ERROR')) {\r\n log.error(message);\r\n errors.push(message);\r\n } else {\r\n log(message);\r\n }\r\n });\r\n cmd.on('exit', (code) => {\r\n if (codeHandler) {\r\n const codeError = codeHandler(code);\r\n if (codeError) {\r\n errors.push(codeError);\r\n }\r\n }\r\n if (errors.length > 0) {\r\n cb(errors.join('\\n'));\r\n } else { cb(); }\r\n });\r\n\r\n }\r\n}\r\n"]}