MCPcopy
hub / github.com/electron/forge / listrPackage

Function listrPackage

packages/api/core/src/api/package.ts:169–743  ·  view source on GitHub ↗
(
  childTrace: typeof autoTrace,
  {
    dir: providedDir = process.cwd(),
    interactive = false,
    arch = getHostArch() as ForgeArch,
    platform = process.platform as ForgePlatform,
    outDir,
  }: PackageOptions,
)

Source from the content-addressed store, hash-verified

167}
168
169export const listrPackage = (
170 childTrace: typeof autoTrace,
171 {
172 dir: providedDir = process.cwd(),
173 interactive = false,
174 arch = getHostArch() as ForgeArch,
175 platform = process.platform as ForgePlatform,
176 outDir,
177 }: PackageOptions,
178) => {
179 const runner = new Listr<PackageContext>(
180 [
181 {
182 title: 'Preparing to package application',
183 task: childTrace<Parameters<ForgeListrTaskFn<PackageContext>>>(
184 { name: 'package-prepare', category: '@electron-forge/core' },
185 async (_, ctx) => {
186 const resolvedDir = await resolveDir(providedDir);
187 if (!resolvedDir) {
188 throw new Error(
189 'Failed to locate compilable Electron application',
190 );
191 }
192 ctx.dir = resolvedDir;
193
194 ctx.forgeConfig = await getForgeConfig(resolvedDir);
195 ctx.packageJSON = await readMutatedPackageJson(
196 resolvedDir,
197 ctx.forgeConfig,
198 );
199
200 if (!ctx.packageJSON.main) {
201 throw new Error(
202 'packageJSON.main must be set to a valid entry point for your Electron app',
203 );
204 }
205
206 ctx.calculatedOutDir =
207 outDir || getCurrentOutDir(resolvedDir, ctx.forgeConfig);
208 },
209 ),
210 },
211 {
212 title: 'Running packaging hooks',
213 task: childTrace<Parameters<ForgeListrTaskFn<PackageContext>>>(
214 { name: 'run-packaging-hooks', category: '@electron-forge/core' },
215 async (childTrace, { forgeConfig }, task) => {
216 return delayTraceTillSignal(
217 childTrace,
218 task.newListr([
219 {
220 title: `Running ${chalk.yellow('generateAssets')} hook`,
221 task: childTrace<Parameters<ForgeListrTaskFn>>(
222 {
223 name: 'run-generateAssets-hook',
224 category: '@electron-forge/core',
225 },
226 async (childTrace, _, task) => {

Callers 2

listrMakeFunction · 0.90
package.tsFile · 0.85

Calls 15

readMutatedPackageJsonFunction · 0.90
delayTraceTillSignalFunction · 0.90
getHookListrTasksFunction · 0.90
runHookFunction · 0.90
getElectronVersionFunction · 0.90
warnFunction · 0.90
childTraceFunction · 0.85
resolveHooksFunction · 0.85
hidePromiseFromPromisifyFunction · 0.85
signalDoneFunction · 0.85
getTargetKeyFunction · 0.85

Tested by

no test coverage detected