init
This commit is contained in:
21
mc_test/node_modules/app-builder-lib/out/frameworks/LibUiFramework.d.ts
generated
vendored
Executable file
21
mc_test/node_modules/app-builder-lib/out/frameworks/LibUiFramework.d.ts
generated
vendored
Executable file
@ -0,0 +1,21 @@
|
||||
import { AfterPackContext } from "../configuration";
|
||||
import { Platform } from "../core";
|
||||
import { Framework, PrepareApplicationStageDirectoryOptions } from "../Framework";
|
||||
export declare class LibUiFramework implements Framework {
|
||||
readonly version: string;
|
||||
readonly distMacOsAppName: string;
|
||||
protected readonly isUseLaunchUi: boolean;
|
||||
readonly name: string;
|
||||
readonly macOsDefaultTargets: string[];
|
||||
readonly defaultAppIdPrefix: string;
|
||||
readonly isCopyElevateHelper = false;
|
||||
readonly isNpmRebuildRequired = false;
|
||||
constructor(version: string, distMacOsAppName: string, isUseLaunchUi: boolean);
|
||||
prepareApplicationStageDirectory(options: PrepareApplicationStageDirectoryOptions): Promise<void>;
|
||||
private prepareMacosApplicationStageDirectory;
|
||||
private prepareLinuxApplicationStageDirectory;
|
||||
afterPack(context: AfterPackContext): Promise<void>;
|
||||
getMainFile(platform: Platform): string | null;
|
||||
private isUseLaunchUiForPlatform;
|
||||
getExcludedDependencies(platform: Platform): Array<string> | null;
|
||||
}
|
||||
108
mc_test/node_modules/app-builder-lib/out/frameworks/LibUiFramework.js
generated
vendored
Executable file
108
mc_test/node_modules/app-builder-lib/out/frameworks/LibUiFramework.js
generated
vendored
Executable file
@ -0,0 +1,108 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.LibUiFramework = void 0;
|
||||
const fs_extra_1 = require("fs-extra");
|
||||
const promises_1 = require("fs/promises");
|
||||
const path = require("path");
|
||||
const builder_util_1 = require("builder-util");
|
||||
const core_1 = require("../core");
|
||||
const appBuilder_1 = require("../util/appBuilder");
|
||||
class LibUiFramework {
|
||||
constructor(version, distMacOsAppName, isUseLaunchUi) {
|
||||
this.version = version;
|
||||
this.distMacOsAppName = distMacOsAppName;
|
||||
this.isUseLaunchUi = isUseLaunchUi;
|
||||
this.name = "libui";
|
||||
// noinspection JSUnusedGlobalSymbols
|
||||
this.macOsDefaultTargets = ["dmg"];
|
||||
this.defaultAppIdPrefix = "com.libui.";
|
||||
// noinspection JSUnusedGlobalSymbols
|
||||
this.isCopyElevateHelper = false;
|
||||
// noinspection JSUnusedGlobalSymbols
|
||||
this.isNpmRebuildRequired = false;
|
||||
}
|
||||
async prepareApplicationStageDirectory(options) {
|
||||
await (0, fs_extra_1.emptyDir)(options.appOutDir);
|
||||
const packager = options.packager;
|
||||
const platform = packager.platform;
|
||||
if (this.isUseLaunchUiForPlatform(platform)) {
|
||||
const appOutDir = options.appOutDir;
|
||||
await (0, builder_util_1.executeAppBuilder)([
|
||||
"proton-native",
|
||||
"--node-version",
|
||||
this.version,
|
||||
"--use-launch-ui",
|
||||
"--platform",
|
||||
platform.nodeName,
|
||||
"--arch",
|
||||
options.arch,
|
||||
"--stage",
|
||||
appOutDir,
|
||||
"--executable",
|
||||
`${packager.appInfo.productFilename}${platform === core_1.Platform.WINDOWS ? ".exe" : ""}`,
|
||||
]);
|
||||
return;
|
||||
}
|
||||
if (platform === core_1.Platform.MAC) {
|
||||
await this.prepareMacosApplicationStageDirectory(packager, options);
|
||||
}
|
||||
else if (platform === core_1.Platform.LINUX) {
|
||||
await this.prepareLinuxApplicationStageDirectory(options);
|
||||
}
|
||||
}
|
||||
async prepareMacosApplicationStageDirectory(packager, options) {
|
||||
const appContentsDir = path.join(options.appOutDir, this.distMacOsAppName, "Contents");
|
||||
await (0, promises_1.mkdir)(path.join(appContentsDir, "Resources"), { recursive: true });
|
||||
await (0, promises_1.mkdir)(path.join(appContentsDir, "MacOS"), { recursive: true });
|
||||
await (0, builder_util_1.executeAppBuilder)(["proton-native", "--node-version", this.version, "--platform", "darwin", "--stage", path.join(appContentsDir, "MacOS")]);
|
||||
const appPlist = {
|
||||
// https://github.com/albe-rosado/create-proton-app/issues/13
|
||||
NSHighResolutionCapable: true,
|
||||
};
|
||||
await packager.applyCommonInfo(appPlist, appContentsDir);
|
||||
await Promise.all([
|
||||
(0, appBuilder_1.executeAppBuilderAndWriteJson)(["encode-plist"], { [path.join(appContentsDir, "Info.plist")]: appPlist }),
|
||||
writeExecutableMain(path.join(appContentsDir, "MacOS", appPlist.CFBundleExecutable), `#!/bin/sh
|
||||
DIR=$(dirname "$0")
|
||||
"$DIR/node" "$DIR/../Resources/app/${options.packager.info.metadata.main || "index.js"}"
|
||||
`),
|
||||
]);
|
||||
}
|
||||
async prepareLinuxApplicationStageDirectory(options) {
|
||||
const appOutDir = options.appOutDir;
|
||||
await (0, builder_util_1.executeAppBuilder)(["proton-native", "--node-version", this.version, "--platform", "linux", "--arch", options.arch, "--stage", appOutDir]);
|
||||
const mainPath = path.join(appOutDir, options.packager.executableName);
|
||||
await writeExecutableMain(mainPath, `#!/bin/sh
|
||||
DIR=$(dirname "$0")
|
||||
"$DIR/node" "$DIR/app/${options.packager.info.metadata.main || "index.js"}"
|
||||
`);
|
||||
}
|
||||
async afterPack(context) {
|
||||
const packager = context.packager;
|
||||
if (!this.isUseLaunchUiForPlatform(packager.platform)) {
|
||||
return;
|
||||
}
|
||||
// LaunchUI requires main.js, rename if need
|
||||
const userMain = packager.info.metadata.main || "index.js";
|
||||
if (userMain === "main.js") {
|
||||
return;
|
||||
}
|
||||
await (0, promises_1.rename)(path.join(context.appOutDir, "app", userMain), path.join(context.appOutDir, "app", "main.js"));
|
||||
}
|
||||
getMainFile(platform) {
|
||||
return this.isUseLaunchUiForPlatform(platform) ? "main.js" : null;
|
||||
}
|
||||
isUseLaunchUiForPlatform(platform) {
|
||||
return platform === core_1.Platform.WINDOWS || (this.isUseLaunchUi && platform === core_1.Platform.LINUX);
|
||||
}
|
||||
getExcludedDependencies(platform) {
|
||||
// part of launchui
|
||||
return this.isUseLaunchUiForPlatform(platform) ? ["libui-node"] : null;
|
||||
}
|
||||
}
|
||||
exports.LibUiFramework = LibUiFramework;
|
||||
async function writeExecutableMain(file, content) {
|
||||
await (0, promises_1.writeFile)(file, content, { mode: 0o755 });
|
||||
await (0, promises_1.chmod)(file, 0o755);
|
||||
}
|
||||
//# sourceMappingURL=LibUiFramework.js.map
|
||||
1
mc_test/node_modules/app-builder-lib/out/frameworks/LibUiFramework.js.map
generated
vendored
Executable file
1
mc_test/node_modules/app-builder-lib/out/frameworks/LibUiFramework.js.map
generated
vendored
Executable file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user