PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@expo/cli/build/src/start/server/middleware
Просмотр файла: InterstitialPageMiddleware.js
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.LoadingEndpoint = void 0;
var _config = require("@expo/config");
var _updates = require("@expo/config-plugins/build/utils/Updates");
var _promises = require("fs/promises");
var _path = _interopRequireDefault(require("path"));
var _resolveFrom = _interopRequireDefault(require("resolve-from"));
var _expoMiddleware = require("./ExpoMiddleware");
var _resolvePlatform = require("./resolvePlatform");
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
const LoadingEndpoint = "/_expo/loading";
exports.LoadingEndpoint = LoadingEndpoint;
function getRuntimeVersion(exp, platform) {
if (!platform) {
return "Undetected";
}
var ref;
return (ref = (0, _updates).getRuntimeVersionNullable(exp, platform)) != null ? ref : "Undetected";
}
class InterstitialPageMiddleware extends _expoMiddleware.ExpoMiddleware {
constructor(projectRoot){
super(projectRoot, [
LoadingEndpoint
]);
}
/** Get the template HTML page and inject values. */ async _getPageAsync({ appName , runtimeVersion }) {
var // Production: This will resolve when installed in the project.
ref;
const templatePath = (ref = _resolveFrom.default.silent(this.projectRoot, "expo/static/loading-page/index.html")) != null ? ref : // Development: This will resolve when testing locally.
_path.default.resolve(__dirname, "../../../../../static/loading-page/index.html");
let content = (await (0, _promises).readFile(templatePath)).toString("utf-8");
content = content.replace(/{{\s*AppName\s*}}/, appName);
content = content.replace(/{{\s*RuntimeVersion\s*}}/, runtimeVersion != null ? runtimeVersion : "");
content = content.replace(/{{\s*Path\s*}}/, this.projectRoot);
return content;
}
/** Get settings for the page from the project config. */ _getProjectOptions(platform) {
(0, _resolvePlatform).assertRuntimePlatform(platform);
const { exp } = (0, _config).getConfig(this.projectRoot);
const { appName } = (0, _config).getNameFromConfig(exp);
const runtimeVersion = getRuntimeVersion(exp, platform);
return {
appName: appName != null ? appName : "App",
runtimeVersion
};
}
async handleRequestAsync(req, res) {
res = (0, _expoMiddleware).disableResponseCache(res);
res.setHeader("Content-Type", "text/html");
const platform = (0, _resolvePlatform).parsePlatformHeader(req);
(0, _resolvePlatform).assertMissingRuntimePlatform(platform);
(0, _resolvePlatform).assertRuntimePlatform(platform);
const { appName , runtimeVersion } = this._getProjectOptions(platform);
const content = await this._getPageAsync({
appName,
runtimeVersion
});
res.end(content);
}
}
exports.InterstitialPageMiddleware = InterstitialPageMiddleware;
//# sourceMappingURL=InterstitialPageMiddleware.js.mapВыполнить команду
Для локальной разработки. Не используйте в интернете!