GSI - Employe Self Service Mobile
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

114 lines
4.9 KiB

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.command = void 0;
const command_1 = require("../command");
const controller = require("../emulator/controller");
const commandUtils = require("../emulator/commandUtils");
const logger_1 = require("../logger");
const registry_1 = require("../emulator/registry");
const types_1 = require("../emulator/types");
const clc = require("colorette");
const constants_1 = require("../emulator/constants");
const utils_1 = require("../utils");
const Table = require("cli-table");
function stylizeLink(url) {
return clc.underline(clc.bold(url));
}
exports.command = new command_1.Command("emulators:start")
.before(commandUtils.setExportOnExitOptions)
.before(commandUtils.beforeEmulatorCommand)
.description("start the local Firebase emulators")
.option(commandUtils.FLAG_ONLY, commandUtils.DESC_ONLY)
.option(commandUtils.FLAG_INSPECT_FUNCTIONS, commandUtils.DESC_INSPECT_FUNCTIONS)
.option(commandUtils.FLAG_IMPORT, commandUtils.DESC_IMPORT)
.option(commandUtils.FLAG_EXPORT_ON_EXIT, commandUtils.DESC_EXPORT_ON_EXIT)
.action((options) => {
const killSignalPromise = commandUtils.shutdownWhenKilled(options);
return Promise.race([
killSignalPromise,
(async () => {
let deprecationNotices;
try {
({ deprecationNotices } = await controller.startAll(options));
}
catch (e) {
await controller.cleanShutdown();
throw e;
}
printEmulatorOverview(options);
for (const notice of deprecationNotices) {
(0, utils_1.logLabeledWarning)("emulators", notice, "warn");
}
return killSignalPromise;
})(),
]);
});
function printEmulatorOverview(options) {
const reservedPorts = [];
for (const internalEmulator of [types_1.Emulators.LOGGING]) {
const info = registry_1.EmulatorRegistry.getInfo(internalEmulator);
if (info) {
reservedPorts.push(info.port);
}
controller.filterEmulatorTargets(options).forEach((emulator) => {
var _a;
reservedPorts.push(...(((_a = registry_1.EmulatorRegistry.getInfo(emulator)) === null || _a === void 0 ? void 0 : _a.reservedPorts) || []));
});
}
const reservedPortsString = reservedPorts.length > 0 ? reservedPorts.join(", ") : "None";
const uiRunning = registry_1.EmulatorRegistry.isRunning(types_1.Emulators.UI);
const head = ["Emulator", "Host:Port"];
if (uiRunning) {
head.push(`View in ${constants_1.Constants.description(types_1.Emulators.UI)}`);
}
const successMessageTable = new Table();
let successMsg = `${clc.green("✔")} ${clc.bold("All emulators ready! It is now safe to connect your app.")}`;
if (uiRunning) {
successMsg += `\n${clc.cyan("i")} View Emulator UI at ${stylizeLink(registry_1.EmulatorRegistry.url(types_1.Emulators.UI).toString())}`;
}
successMessageTable.push([successMsg]);
const emulatorsTable = new Table({
head: head,
style: {
head: ["yellow"],
},
});
emulatorsTable.push(...controller
.filterEmulatorTargets(options)
.map((emulator) => {
const emulatorName = constants_1.Constants.description(emulator).replace(/ emulator/i, "");
const isSupportedByUi = types_1.EMULATORS_SUPPORTED_BY_UI.includes(emulator);
const listen = commandUtils.getListenOverview(emulator);
if (!listen) {
const row = [emulatorName, "Failed to initialize (see above)"];
if (uiRunning) {
row.push("");
}
return row;
}
let uiLink = "n/a";
if (isSupportedByUi && uiRunning) {
const url = registry_1.EmulatorRegistry.url(types_1.Emulators.UI);
url.pathname = `/${emulator}`;
uiLink = stylizeLink(url.toString());
}
return [emulatorName, listen, uiLink];
})
.map((col) => col.slice(0, head.length))
.filter((v) => v));
let extensionsTable = "";
if (registry_1.EmulatorRegistry.isRunning(types_1.Emulators.EXTENSIONS)) {
const extensionsEmulatorInstance = registry_1.EmulatorRegistry.get(types_1.Emulators.EXTENSIONS);
extensionsTable = extensionsEmulatorInstance.extensionsInfoTable(options);
}
logger_1.logger.info(`\n${successMessageTable}
${emulatorsTable}
${registry_1.EmulatorRegistry.isRunning(types_1.Emulators.HUB)
? clc.blackBright(" Emulator Hub running at ") + registry_1.EmulatorRegistry.url(types_1.Emulators.HUB).host
: clc.blackBright(" Emulator Hub not running.")}
${clc.blackBright(" Other reserved ports:")} ${reservedPortsString}
${extensionsTable}
Issues? Report them at ${stylizeLink("https://github.com/firebase/firebase-tools/issues")} and attach the *-debug.log files.
`);
}