HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/vhost/disk-apps/pwa.sports-crowd.com/node_modules/native-run/dist/ios/utils/app.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.unzipIPA = exports.getBundleId = void 0;
const utils_fs_1 = require("@ionic/utils-fs");
const Debug = require("debug");
const fs_1 = require("fs");
const path = require("path");
const errors_1 = require("../../errors");
const process_1 = require("../../utils/process");
const unzip_1 = require("../../utils/unzip");
const debug = Debug('native-run:ios:utils:app');
// TODO: cross platform? Use plist/bplist
async function getBundleId(appPath) {
    const plistPath = path.resolve(appPath, 'Info.plist');
    try {
        const { stdout } = await (0, process_1.execFile)('/usr/libexec/PlistBuddy', ['-c', 'Print :CFBundleIdentifier', plistPath], {
            encoding: 'utf8',
        });
        if (stdout) {
            return stdout.trim();
        }
    }
    catch {
        // ignore
    }
    throw new errors_1.Exception('Unable to get app bundle identifier');
}
exports.getBundleId = getBundleId;
async function unzipIPA(ipaPath, destPath) {
    let error;
    let appPath = '';
    await (0, unzip_1.unzip)(ipaPath, async (entry, zipfile, openReadStream) => {
        debug(`Unzip: ${entry.fileName}`);
        const dest = path.join(destPath, entry.fileName);
        if (entry.fileName.endsWith('/')) {
            await (0, utils_fs_1.mkdirp)(dest);
            if (entry.fileName.endsWith('.app/')) {
                appPath = entry.fileName;
            }
            zipfile.readEntry();
        }
        else {
            await (0, utils_fs_1.mkdirp)(path.dirname(dest));
            const readStream = await openReadStream(entry);
            readStream.on('error', (err) => (error = err));
            readStream.on('end', () => {
                zipfile.readEntry();
            });
            readStream.pipe((0, fs_1.createWriteStream)(dest));
        }
    });
    if (error) {
        throw error;
    }
    if (!appPath) {
        throw new errors_1.Exception('Unable to determine .app directory from .ipa');
    }
    return appPath;
}
exports.unzipIPA = unzipIPA;