"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.InfoCommand = void 0; const string_1 = require("@ionic/cli-framework/utils/string"); const utils_terminal_1 = require("@ionic/utils-terminal"); const lodash = require("lodash"); const color_1 = require("../lib/color"); const command_1 = require("../lib/command"); const INFO_GROUPS = ['ionic', 'capacitor', 'cordova', 'utility', 'system', 'environment']; class InfoCommand extends command_1.Command { async getMetadata() { return { name: 'info', type: 'global', summary: 'Print project, system, and environment information', description: ` This command is an easy way to share information about your setup. If applicable, be sure to run ${color_1.input('ionic info')} within your project directory to display even more information. `, options: [ { name: 'json', summary: 'Print system/environment info in JSON format', type: Boolean, }, ], }; } async run(inputs, options) { const { json } = options; const items = (await this.env.getInfo()).filter(item => item.hidden !== true); if (json) { process.stdout.write(JSON.stringify(items)); } else { const groupedInfo = new Map(INFO_GROUPS.map((group) => [group, items.filter(item => item.group === group)])); const sortInfo = (a, b) => { if (a.name[0] === '@' && b.name[0] !== '@') { return 1; } if (a.name[0] !== '@' && b.name[0] === '@') { return -1; } return string_1.strcmp(a.name.toLowerCase(), b.name.toLowerCase()); }; const projectPath = this.project && this.project.directory; const splitInfo = (ary) => ary .sort(sortInfo) .map((item) => [` ${item.name}${item.flair ? ' ' + color_1.weak('(' + item.flair + ')') : ''}`, color_1.weak(item.value) + (item.path && projectPath && !item.path.startsWith(projectPath) ? ` ${color_1.weak('(' + item.path + ')')}` : '')]); const format = (details) => utils_terminal_1.columnar(details, { vsep: ':' }); if (!projectPath) { this.env.log.warn('You are not in an Ionic project directory. Project context may be missing.'); } this.env.log.nl(); for (const [group, info] of groupedInfo.entries()) { if (info.length > 0) { this.env.log.rawmsg(`${color_1.strong(`${lodash.startCase(group)}:`)}\n\n`); this.env.log.rawmsg(`${format(splitInfo(info))}\n\n`); } } } } } exports.InfoCommand = InfoCommand;
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
capacitor | Folder | 0755 |
|
|
config | Folder | 0755 |
|
|
cordova | Folder | 0755 |
|
|
deploy | Folder | 0755 |
|
|
doctor | Folder | 0755 |
|
|
enterprise | Folder | 0755 |
|
|
git | Folder | 0755 |
|
|
integrations | Folder | 0755 |
|
|
monitoring | Folder | 0755 |
|
|
package | Folder | 0755 |
|
|
ssh | Folder | 0755 |
|
|
ssl | Folder | 0755 |
|
|
build.d.ts | File | 484 B | 0644 |
|
build.js | File | 2.58 KB | 0644 |
|
completion.d.ts | File | 315 B | 0644 |
|
completion.js | File | 2 KB | 0644 |
|
docs.d.ts | File | 309 B | 0644 |
|
docs.js | File | 1.77 KB | 0644 |
|
generate.d.ts | File | 436 B | 0644 |
|
generate.js | File | 2.29 KB | 0644 |
|
help.d.ts | File | 309 B | 0644 |
|
help.js | File | 2.42 KB | 0644 |
|
index.d.ts | File | 763 B | 0644 |
|
index.js | File | 6.07 KB | 0644 |
|
info.d.ts | File | 309 B | 0644 |
|
info.js | File | 2.84 KB | 0644 |
|
init.d.ts | File | 615 B | 0644 |
|
init.js | File | 9.29 KB | 0644 |
|
ionitron.d.ts | File | 313 B | 0644 |
|
ionitron.js | File | 1.07 KB | 0644 |
|
link.d.ts | File | 1.23 KB | 0644 |
|
link.js | File | 22.04 KB | 0644 |
|
login.d.ts | File | 507 B | 0644 |
|
login.js | File | 7.78 KB | 0644 |
|
logout.d.ts | File | 311 B | 0644 |
|
logout.js | File | 922 B | 0644 |
|
repair.d.ts | File | 544 B | 0644 |
|
repair.js | File | 5.12 KB | 0644 |
|
serve.d.ts | File | 621 B | 0644 |
|
serve.js | File | 6.1 KB | 0644 |
|
share.d.ts | File | 217 B | 0644 |
|
share.js | File | 780 B | 0644 |
|
signup.d.ts | File | 311 B | 0644 |
|
signup.js | File | 977 B | 0644 |
|
start.d.ts | File | 1.36 KB | 0644 |
|
start.js | File | 30.26 KB | 0644 |
|
state.d.ts | File | 217 B | 0644 |
|
state.js | File | 1.93 KB | 0644 |
|
telemetry.d.ts | File | 314 B | 0644 |
|
telemetry.js | File | 1.17 KB | 0644 |
|
version.d.ts | File | 312 B | 0644 |
|
version.js | File | 648 B | 0644 |
|