UNPKG

44.4 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../src/platformPackager.ts"],"names":[],"mappings":"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","sourcesContent":["import BluebirdPromise from \"bluebird-lst\"\nimport { Arch, asArray, AsyncTaskManager, debug, DebugLogger, deepAssign, executeAppBuilderAsJson, getArchSuffix, InvalidConfigurationError, isEmptyOrSpaces, log } from \"builder-util\"\nimport { FileTransformer, statOrNull } from \"builder-util/out/fs\"\nimport { orIfFileNotExist } from \"builder-util/out/promise\"\nimport { readdir } from \"fs-extra-p\"\nimport { Lazy } from \"lazy-val\"\nimport { Minimatch } from \"minimatch\"\nimport * as path from \"path\"\nimport { AppInfo } from \"./appInfo\"\nimport { checkFileInArchive } from \"./asar/asarFileChecker\"\nimport { AsarPackager } from \"./asar/asarUtil\"\nimport { computeData } from \"./asar/integrity\"\nimport { copyFiles, FileMatcher, getFileMatchers, GetFileMatchersOptions, getMainFileMatchers, getNodeModuleFileMatcher } from \"./fileMatcher\"\nimport { createTransformer, isElectronCompileUsed } from \"./fileTransformer\"\nimport { isElectronBased } from \"./Framework\"\nimport { PackagerOptions, Packager, AfterPackContext, AsarOptions, Configuration, ElectronPlatformName, FileAssociation, PlatformSpecificBuildOptions, CompressionLevel, Platform, Target, TargetSpecificOptions } from \"./index\"\nimport { copyAppFiles, transformFiles, computeFileSets, computeNodeModuleFileSets, ELECTRON_COMPILE_SHIM_FILENAME } from \"./util/appFileCopier\"\nimport { expandMacro as doExpandMacro } from \"./util/macroExpander\"\n\nexport abstract class PlatformPackager<DC extends PlatformSpecificBuildOptions> {\n get packagerOptions(): PackagerOptions {\n return this.info.options\n }\n\n get buildResourcesDir(): string {\n return this.info.buildResourcesDir\n }\n\n get projectDir(): string {\n return this.info.projectDir\n }\n\n get config(): Configuration {\n return this.info.config\n }\n\n readonly platformSpecificBuildOptions: DC\n\n get resourceList(): Promise<Array<string>> {\n return this._resourceList.value\n }\n\n private readonly _resourceList = new Lazy<Array<string>>(() => orIfFileNotExist(readdir(this.info.buildResourcesDir), []))\n\n readonly appInfo: AppInfo\n\n protected constructor(readonly info: Packager, readonly platform: Platform) {\n this.platformSpecificBuildOptions = PlatformPackager.normalizePlatformSpecificBuildOptions((this.config as any)[platform.buildConfigurationKey])\n this.appInfo = this.prepareAppInfo(info.appInfo)\n }\n\n get compression(): CompressionLevel {\n const compression = this.platformSpecificBuildOptions.compression\n // explicitly set to null - request to use default value instead of parent (in the config)\n if (compression === null) {\n return \"normal\"\n }\n return compression || this.config.compression || \"normal\"\n }\n\n get debugLogger(): DebugLogger {\n return this.info.debugLogger\n }\n\n abstract get defaultTarget(): Array<string>\n\n protected prepareAppInfo(appInfo: AppInfo) {\n return appInfo\n }\n\n private static normalizePlatformSpecificBuildOptions(options: any | null | undefined): any {\n return options == null ? Object.create(null) : options\n }\n\n abstract createTargets(targets: Array<string>, mapper: (name: string, factory: (outDir: string) => Target) => void): void\n\n protected getCscPassword(): string {\n const password = this.doGetCscPassword()\n if (isEmptyOrSpaces(password)) {\n log.info({reason: \"CSC_KEY_PASSWORD is not defined\"}, \"empty password will be used for code signing\")\n return \"\"\n }\n else {\n return password!.trim()\n }\n }\n\n protected getCscLink(extraEnvName?: string | null): string | null | undefined {\n // allow to specify as empty string\n const envValue = chooseNotNull(extraEnvName == null ? null : process.env[extraEnvName], process.env.CSC_LINK)\n return chooseNotNull(chooseNotNull(this.info.config.cscLink, this.platformSpecificBuildOptions.cscLink), envValue)\n }\n\n protected doGetCscPassword(): string | null | undefined {\n // allow to specify as empty string\n return chooseNotNull(chooseNotNull(this.info.config.cscKeyPassword, this.platformSpecificBuildOptions.cscKeyPassword), process.env.CSC_KEY_PASSWORD)\n }\n\n protected computeAppOutDir(outDir: string, arch: Arch): string {\n return this.packagerOptions.prepackaged || path.join(outDir, `${this.platform.buildConfigurationKey}${getArchSuffix(arch)}${this.platform === Platform.MAC ? \"\" : \"-unpacked\"}`)\n }\n\n dispatchArtifactCreated(file: string, target: Target | null, arch: Arch | null, safeArtifactName?: string | null) {\n this.info.dispatchArtifactCreated({\n file, safeArtifactName, target, arch,\n packager: this,\n })\n }\n\n async pack(outDir: string, arch: Arch, targets: Array<Target>, taskManager: AsyncTaskManager): Promise<any> {\n const appOutDir = this.computeAppOutDir(outDir, arch)\n await this.doPack(outDir, appOutDir, this.platform.nodeName as ElectronPlatformName, arch, this.platformSpecificBuildOptions, targets)\n this.packageInDistributableFormat(appOutDir, arch, targets, taskManager)\n }\n\n protected packageInDistributableFormat(appOutDir: string, arch: Arch, targets: Array<Target>, taskManager: AsyncTaskManager): void {\n if (targets.find(it => !it.isAsyncSupported) == null) {\n PlatformPackager.buildAsyncTargets(targets, taskManager, appOutDir, arch)\n return\n }\n\n taskManager.add(async () => {\n // BluebirdPromise.map doesn't invoke target.build immediately, but for RemoteTarget it is very critical to call build() before finishBuild()\n const subTaskManager = new AsyncTaskManager(this.info.cancellationToken)\n PlatformPackager.buildAsyncTargets(targets, subTaskManager, appOutDir, arch)\n await subTaskManager.awaitTasks()\n\n for (const target of targets) {\n if (!target.isAsyncSupported) {\n await target.build(appOutDir, arch)\n }\n }\n })\n }\n\n private static buildAsyncTargets(targets: Array<Target>, taskManager: AsyncTaskManager, appOutDir: string, arch: Arch) {\n for (const target of targets) {\n if (target.isAsyncSupported) {\n taskManager.addTask(target.build(appOutDir, arch))\n }\n }\n }\n\n private getExtraFileMatchers(isResources: boolean, appOutDir: string, options: GetFileMatchersOptions): Array<FileMatcher> | null {\n const base = isResources ? this.getResourcesDir(appOutDir) : (this.platform === Platform.MAC ? path.join(appOutDir, `${this.appInfo.productFilename}.app`, \"Contents\") : appOutDir)\n return getFileMatchers(this.config, isResources ? \"extraResources\" : \"extraFiles\", this.projectDir, base, options)\n }\n\n get electronDistExecutableName() {\n return this.config.muonVersion == null ? \"electron\" : \"brave\"\n }\n\n get electronDistMacOsExecutableName() {\n return this.config.muonVersion == null ? \"Electron\" : \"Brave\"\n }\n\n protected async doPack(outDir: string, appOutDir: string, platformName: ElectronPlatformName, arch: Arch, platformSpecificBuildOptions: DC, targets: Array<Target>) {\n if (this.packagerOptions.prepackaged != null) {\n return\n }\n\n const macroExpander = (it: string) => this.expandMacro(it, arch == null ? null : Arch[arch], {\"/*\": \"{,/**/*}\"})\n\n const framework = this.info.framework\n log.info({\n platform: platformName,\n arch: Arch[arch],\n [`${framework.name}`]: framework.version,\n appOutDir: log.filePath(appOutDir),\n }, `packaging`)\n\n await framework.prepareApplicationStageDirectory({\n packager: this,\n appOutDir,\n platformName,\n arch: Arch[arch],\n version: framework.version,\n })\n\n const excludePatterns: Array<Minimatch> = []\n\n const computeParsedPatterns = (patterns: Array<FileMatcher> | null) => {\n if (patterns != null) {\n for (const pattern of patterns) {\n pattern.computeParsedPatterns(excludePatterns, this.info.projectDir)\n }\n }\n }\n\n const getFileMatchersOptions: GetFileMatchersOptions = {\n macroExpander,\n customBuildOptions: platformSpecificBuildOptions,\n outDir,\n }\n const extraResourceMatchers = this.getExtraFileMatchers(true, appOutDir, getFileMatchersOptions)\n computeParsedPatterns(extraResourceMatchers)\n const extraFileMatchers = this.getExtraFileMatchers(false, appOutDir, getFileMatchersOptions)\n computeParsedPatterns(extraFileMatchers)\n\n const packContext: AfterPackContext = {\n appOutDir, outDir, arch, targets,\n packager: this,\n electronPlatformName: platformName,\n }\n\n const asarOptions = await this.computeAsarOptions(platformSpecificBuildOptions)\n const resourcesPath = this.platform === Platform.MAC ? path.join(appOutDir, framework.distMacOsAppName, \"Contents\", \"Resources\") : (isElectronBased(framework) ? path.join(appOutDir, \"resources\") : appOutDir)\n const taskManager = new AsyncTaskManager(this.info.cancellationToken)\n this.copyAppFiles(taskManager, asarOptions, resourcesPath, path.join(resourcesPath, \"app\"), packContext, platformSpecificBuildOptions, excludePatterns, macroExpander)\n await taskManager.awaitTasks()\n\n if (this.info.cancellationToken.cancelled) {\n return\n }\n\n const beforeCopyExtraFiles = this.info.framework.beforeCopyExtraFiles\n if (beforeCopyExtraFiles != null) {\n await beforeCopyExtraFiles(this, appOutDir, asarOptions == null ? null : await computeData(resourcesPath, asarOptions.externalAllowed ? {externalAllowed: true} : null))\n }\n\n const transformerForExtraFiles = this.createTransformerForExtraFiles(packContext)\n await copyFiles(extraResourceMatchers, transformerForExtraFiles)\n await copyFiles(extraFileMatchers, transformerForExtraFiles)\n\n if (this.info.cancellationToken.cancelled) {\n return\n }\n\n await this.info.afterPack(packContext)\n const isAsar = asarOptions != null\n await this.sanityCheckPackage(appOutDir, isAsar)\n await this.signApp(packContext, isAsar)\n\n const afterSign = resolveFunction(this.config.afterSign, \"afterSign\")\n if (afterSign != null) {\n await Promise.resolve(afterSign(packContext))\n }\n }\n\n protected createTransformerForExtraFiles(packContext: AfterPackContext): FileTransformer | null {\n return null\n }\n\n private copyAppFiles(taskManager: AsyncTaskManager, asarOptions: AsarOptions | null, resourcePath: string, defaultDestination: string, packContext: AfterPackContext, platformSpecificBuildOptions: DC, excludePatterns: Array<Minimatch>, macroExpander: ((it: string) => string)) {\n const appDir = this.info.appDir\n const config = this.config\n const isElectronCompile = asarOptions != null && isElectronCompileUsed(this.info)\n\n const mainMatchers = getMainFileMatchers(appDir, defaultDestination, macroExpander, platformSpecificBuildOptions, this, packContext.outDir, isElectronCompile)\n if (excludePatterns.length > 0) {\n for (const matcher of mainMatchers) {\n matcher.excludePatterns = excludePatterns\n }\n }\n\n const framework = this.info.framework\n const transformer = createTransformer(appDir, config, isElectronCompile ? {\n originalMain: this.info.metadata.main,\n main: ELECTRON_COMPILE_SHIM_FILENAME,\n ...config.extraMetadata\n } : config.extraMetadata, framework.createTransformer == null ? null : framework.createTransformer())\n\n const _computeFileSets = (matchers: Array<FileMatcher>) => {\n return computeFileSets(matchers, this.info.isPrepackedAppAsar ? null : transformer, this, isElectronCompile)\n .then(async result => {\n if (!this.info.isPrepackedAppAsar && !this.info.areNodeModulesHandledExternally) {\n const moduleFileMatcher = getNodeModuleFileMatcher(appDir, defaultDestination, macroExpander, platformSpecificBuildOptions, this.info)\n result = result.concat(await computeNodeModuleFileSets(this, moduleFileMatcher))\n }\n return result.filter(it => it.files.length > 0)\n })\n }\n\n if (this.info.isPrepackedAppAsar) {\n taskManager.addTask(BluebirdPromise.each(_computeFileSets([new FileMatcher(appDir, resourcePath, macroExpander)]), it => copyAppFiles(it, this.info, transformer)))\n }\n else if (asarOptions == null) {\n // for ASAR all asar unpacked files will be extra transformed (e.g. sign of EXE and DLL) later,\n // for prepackaged asar extra transformation not supported yet,\n // so, extra transform if asar is disabled\n const transformerForExtraFiles = this.createTransformerForExtraFiles(packContext)\n const combinedTransformer: FileTransformer = file => {\n if (transformerForExtraFiles != null) {\n const result = transformerForExtraFiles(file)\n if (result != null) {\n return result\n }\n }\n return transformer(file)\n }\n\n taskManager.addTask(BluebirdPromise.each(_computeFileSets(mainMatchers), it => copyAppFiles(it, this.info, combinedTransformer)))\n }\n else {\n const unpackPattern = getFileMatchers(config, \"asarUnpack\", appDir, defaultDestination, {\n macroExpander,\n customBuildOptions: platformSpecificBuildOptions,\n outDir: packContext.outDir,\n })\n const fileMatcher = unpackPattern == null ? null : unpackPattern[0]\n taskManager.addTask(_computeFileSets(mainMatchers)\n .then(async fileSets => {\n for (const fileSet of fileSets) {\n await transformFiles(transformer, fileSet)\n }\n\n await new AsarPackager(appDir, resourcePath, asarOptions, fileMatcher == null ? null : fileMatcher.createFilter())\n .pack(fileSets, this)\n }))\n }\n }\n\n protected signApp(packContext: AfterPackContext, isAsar: boolean): Promise<any> {\n return Promise.resolve()\n }\n\n async getIconPath(): Promise<string | null> {\n return null\n }\n\n private async computeAsarOptions(customBuildOptions: DC): Promise<AsarOptions | null> {\n if (!isElectronBased(this.info.framework)) {\n return null\n }\n\n function errorMessage(name: string) {\n return `${name} is deprecated is deprecated and not supported — please use asarUnpack`\n }\n\n const buildMetadata = this.config as any\n if (buildMetadata[\"asar-unpack\"] != null) {\n throw new Error(errorMessage(\"asar-unpack\"))\n }\n if (buildMetadata[\"asar-unpack-dir\"] != null) {\n throw new Error(errorMessage(\"asar-unpack-dir\"))\n }\n\n const platformSpecific = customBuildOptions.asar\n const result = platformSpecific == null ? this.config.asar : platformSpecific\n if (result === false) {\n const appAsarStat = await statOrNull(path.join(this.info.appDir, \"app.asar\"))\n //noinspection ES6MissingAwait\n if (appAsarStat == null || !appAsarStat.isFile()) {\n log.warn({\n solution: \"enable asar and use asarUnpack to unpack files that must be externally available\",\n }, \"asar using is disabled — it is strongly not recommended\")\n }\n return null\n }\n\n if (result == null || result === true) {\n return {}\n }\n\n for (const name of [\"unpackDir\", \"unpack\"]) {\n if ((result as any)[name] != null) {\n throw new Error(errorMessage(`asar.${name}`))\n }\n }\n return deepAssign({}, result)\n }\n\n public getElectronSrcDir(dist: string): string {\n return path.resolve(this.projectDir, dist)\n }\n\n public getElectronDestinationDir(appOutDir: string): string {\n return appOutDir\n }\n\n getResourcesDir(appOutDir: string): string {\n if (this.platform === Platform.MAC) {\n return this.getMacOsResourcesDir(appOutDir)\n }\n else if (isElectronBased(this.info.framework)) {\n return path.join(appOutDir, \"resources\")\n }\n else {\n return appOutDir\n }\n }\n\n public getMacOsResourcesDir(appOutDir: string): string {\n return path.join(appOutDir, `${this.appInfo.productFilename}.app`, \"Contents\", \"Resources\")\n }\n\n private async checkFileInPackage(resourcesDir: string, file: string, messagePrefix: string, isAsar: boolean) {\n const relativeFile = path.relative(this.info.appDir, path.resolve(this.info.appDir, file))\n if (isAsar) {\n await checkFileInArchive(path.join(resourcesDir, \"app.asar\"), relativeFile, messagePrefix)\n return\n }\n\n const pathParsed = path.parse(file)\n // Even when packaging to asar is disabled, it does not imply that the main file can not be inside an .asar archive.\n // This may occur when the packaging is done manually before processing with electron-builder.\n if (pathParsed.dir.includes(\".asar\")) {\n // The path needs to be split to the part with an asar archive which acts like a directory and the part with\n // the path to main file itself. (e.g. path/arch.asar/dir/index.js -> path/arch.asar, dir/index.js)\n // noinspection TypeScriptValidateJSTypes\n const pathSplit: Array<string> = pathParsed.dir.split(path.sep)\n let partWithAsarIndex = 0\n pathSplit.some((pathPart: string, index: number) => {\n partWithAsarIndex = index\n return pathPart.endsWith(\".asar\")\n })\n const asarPath = path.join.apply(path, pathSplit.slice(0, partWithAsarIndex + 1))\n let mainPath = pathSplit.length > (partWithAsarIndex + 1) ? path.join.apply(pathSplit.slice(partWithAsarIndex + 1)) : \"\"\n mainPath += path.join(mainPath, pathParsed.base)\n await checkFileInArchive(path.join(resourcesDir, \"app\", asarPath), mainPath, messagePrefix)\n }\n else {\n const outStat = await statOrNull(path.join(resourcesDir, \"app\", relativeFile))\n if (outStat == null) {\n throw new Error(`${messagePrefix} \"${relativeFile}\" does not exist. Seems like a wrong configuration.`)\n }\n else {\n //noinspection ES6MissingAwait\n if (!outStat.isFile()) {\n throw new Error(`${messagePrefix} \"${relativeFile}\" is not a file. Seems like a wrong configuration.`)\n }\n }\n }\n }\n\n private async sanityCheckPackage(appOutDir: string, isAsar: boolean): Promise<any> {\n const outStat = await statOrNull(appOutDir)\n if (outStat == null) {\n throw new Error(`Output directory \"${appOutDir}\" does not exist. Seems like a wrong configuration.`)\n }\n else {\n //noinspection ES6MissingAwait\n if (!outStat.isDirectory()) {\n throw new Error(`Output directory \"${appOutDir}\" is not a directory. Seems like a wrong configuration.`)\n }\n }\n\n const resourcesDir = this.getResourcesDir(appOutDir)\n await this.checkFileInPackage(resourcesDir, this.info.metadata.main || \"index.js\", \"Application entry file\", isAsar)\n await this.checkFileInPackage(resourcesDir, \"package.json\", \"Application\", isAsar)\n }\n\n // tslint:disable-next-line:no-invalid-template-strings\n computeSafeArtifactName(suggestedName: string | null, ext: string, arch?: Arch | null, skipArchIfX64 = true, safePattern: string = \"${name}-${version}-${arch}.${ext}\"): string | null {\n // GitHub only allows the listed characters in file names.\n if (suggestedName != null && isSafeGithubName(suggestedName)) {\n return null\n }\n\n return this.computeArtifactName(safePattern, ext, skipArchIfX64 && arch === Arch.x64 ? null : arch)\n }\n\n expandArtifactNamePattern(targetSpecificOptions: TargetSpecificOptions | null | undefined, ext: string, arch?: Arch | null, defaultPattern?: string, skipArchIfX64 = true): string {\n let pattern = targetSpecificOptions == null ? null : targetSpecificOptions.artifactName\n if (pattern == null) {\n // tslint:disable-next-line:no-invalid-template-strings\n pattern = this.platformSpecificBuildOptions.artifactName || this.config.artifactName || defaultPattern || \"${productName}-${version}-${arch}.${ext}\"\n }\n return this.computeArtifactName(pattern, ext, skipArchIfX64 && arch === Arch.x64 ? null : arch)\n }\n\n private computeArtifactName(pattern: any, ext: string, arch: Arch | null | undefined) {\n let archName: string | null = arch == null ? null : Arch[arch]\n if (arch === Arch.x64) {\n if (ext === \"AppImage\" || ext === \"rpm\") {\n archName = \"x86_64\"\n }\n else if (ext === \"deb\" || ext === \"snap\") {\n archName = \"amd64\"\n }\n }\n else if (arch === Arch.ia32) {\n if (ext === \"deb\" || ext === \"AppImage\" || ext === \"snap\") {\n archName = \"i386\"\n }\n else if (ext === \"pacman\" || ext === \"rpm\") {\n archName = \"i686\"\n }\n }\n\n return this.expandMacro(pattern, this.platform === Platform.MAC ? null : archName, {\n ext\n })\n }\n\n expandMacro(pattern: string, arch?: string | null, extra: any = {}, isProductNameSanitized = true): string {\n return doExpandMacro(pattern, arch, this.appInfo, {os: this.platform.buildConfigurationKey, ...extra}, isProductNameSanitized)\n }\n\n generateName2(ext: string | null, classifier: string | null | undefined, deployment: boolean): string {\n const dotExt = ext == null ? \"\" : `.${ext}`\n const separator = ext === \"deb\" ? \"_\" : \"-\"\n return `${deployment ? this.appInfo.name : this.appInfo.productFilename}${separator}${this.appInfo.version}${classifier == null ? \"\" : `${separator}${classifier}`}${dotExt}`\n }\n\n getTempFile(suffix: string): Promise<string> {\n return this.info.tempDirManager.getTempFile({suffix})\n }\n\n get fileAssociations(): Array<FileAssociation> {\n return asArray(this.config.fileAssociations).concat(asArray(this.platformSpecificBuildOptions.fileAssociations))\n }\n\n async getResource(custom: string | null | undefined, ...names: Array<string>): Promise<string | null> {\n const resourcesDir = this.info.buildResourcesDir\n if (custom === undefined) {\n const resourceList = await this.resourceList\n for (const name of names) {\n if (resourceList.includes(name)) {\n return path.join(resourcesDir, name)\n }\n }\n }\n else if (custom != null && !isEmptyOrSpaces(custom)) {\n const resourceList = await this.resourceList\n if (resourceList.includes(custom)) {\n return path.join(resourcesDir, custom)\n }\n\n let p = path.resolve(resourcesDir, custom)\n if (await statOrNull(p) == null) {\n p = path.resolve(this.projectDir, custom)\n if (await statOrNull(p) == null) {\n throw new InvalidConfigurationError(`cannot find specified resource \"${custom}\", nor relative to \"${resourcesDir}\", neither relative to project dir (\"${this.projectDir}\")`)\n }\n }\n return p\n }\n return null\n }\n\n get forceCodeSigning(): boolean {\n const forceCodeSigningPlatform = this.platformSpecificBuildOptions.forceCodeSigning\n return (forceCodeSigningPlatform == null ? this.config.forceCodeSigning : forceCodeSigningPlatform) || false\n }\n\n protected async getOrConvertIcon(format: IconFormat): Promise<string | null> {\n const sourceNames = [`icon.${format === \"set\" ? \"png\" : format}`, \"icon.png\", \"icons\"]\n\n const iconPath = this.platformSpecificBuildOptions.icon || this.config.icon\n if (iconPath != null) {\n sourceNames.unshift(iconPath)\n }\n\n if (format === \"ico\") {\n sourceNames.push(\"icon.icns\")\n }\n\n const result = await this.resolveIcon(sourceNames, format)\n if (result.length === 0) {\n const framework = this.info.framework\n if (framework.getDefaultIcon != null) {\n return framework.getDefaultIcon(this.platform)\n }\n\n log.warn({reason: \"application icon is not set\"}, framework.isDefaultAppIconProvided ? `default ${capitalizeFirstLetter(framework.name)} icon is used` : `application doesn't have an icon`)\n return null\n }\n else {\n return result[0].file\n }\n }\n\n // convert if need, validate size (it is a reason why tool is called even if file has target extension (already specified as foo.icns for example))\n async resolveIcon(sources: Array<string>, outputFormat: IconFormat): Promise<Array<IconInfo>> {\n const args = [\n \"icon\",\n \"--format\", outputFormat,\n \"--root\", this.buildResourcesDir,\n \"--root\", this.projectDir,\n \"--out\", path.resolve(this.projectDir, this.config.directories!!.output!!, `.icon-${outputFormat}`),\n ]\n for (const source of sources) {\n args.push(\"--input\", source)\n }\n\n const result: IconConvertResult = await executeAppBuilderAsJson(args)\n const errorMessage = result.error\n if (errorMessage != null) {\n throw new InvalidConfigurationError(errorMessage, result.errorCode)\n }\n return result.icons || []\n }\n}\n\nexport interface IconInfo {\n file: string\n size: number\n}\n\ninterface IconConvertResult {\n icons?: Array<IconInfo>\n\n error?: string\n errorCode?: string\n}\n\nexport type IconFormat = \"icns\" | \"ico\" | \"set\"\n\nexport function isSafeGithubName(name: string) {\n return /^[0-9A-Za-z._-]+$/.test(name)\n}\n\n// remove leading dot\nexport function normalizeExt(ext: string) {\n return ext.startsWith(\".\") ? ext.substring(1) : ext\n}\n\nexport function resolveFunction<T>(executor: T | string, name: string): T {\n if (executor == null || typeof executor !== \"string\") {\n return executor\n }\n\n let p = executor as string\n if (p.startsWith(\".\")) {\n p = path.resolve(p)\n }\n\n try {\n p = require.resolve(p)\n }\n catch (e) {\n debug(e)\n p = path.resolve(p)\n }\n\n const m = require(p)\n const namedExport = m[name]\n if (namedExport == null) {\n return m.default || m\n }\n else {\n return namedExport\n }\n}\n\nexport function chooseNotNull(v1: string | null | undefined, v2: string | null | undefined): string | null | undefined {\n return v1 == null ? v2 : v1\n}\n\nfunction capitalizeFirstLetter(text: string) {\n return text.charAt(0).toUpperCase() + text.slice(1)\n}"],"sourceRoot":""}