Skip to content

Commit bf7ac22

Browse files
committed
wip
1 parent b63d51c commit bf7ac22

File tree

1 file changed

+35
-9
lines changed

1 file changed

+35
-9
lines changed

lib/commands/dependencies/index.js

Lines changed: 35 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/* eslint-disable no-console */
22

3-
// import chalk from 'chalk'
3+
import chalk from 'chalk'
4+
// @ts-ignore
5+
import chalkTable from 'chalk-table'
46
import meow from 'meow'
57
import ora from 'ora'
68

@@ -20,7 +22,7 @@ export const dependencies = {
2022
if (input) {
2123
const spinnerText = 'Searching dependencies...'
2224
const spinner = ora(spinnerText).start()
23-
await searchDeps(input.limit, input.offset, spinner)
25+
await searchDeps(input, spinner)
2426
}
2527
}
2628
}
@@ -30,13 +32,13 @@ const dependenciesFlags = prepareFlags({
3032
type: 'number',
3133
shortFlag: 'l',
3234
default: 50,
33-
description: 'Repository name',
35+
description: 'Maximum number of dependencies returned',
3436
},
3537
offset: {
3638
type: 'number',
3739
shortFlag: 'o',
3840
default: 0,
39-
description: 'Branch name',
41+
description: 'Page number',
4042
}
4143
})
4244

@@ -71,7 +73,7 @@ function setupCommand (name, description, argv, importMeta) {
7173
${printFlagList(flags, 6)}
7274
7375
Examples
74-
$ ${name} FakeOrg
76+
$ ${name}
7577
`, {
7678
argv,
7779
description,
@@ -106,12 +108,11 @@ function setupCommand (name, description, argv, importMeta) {
106108
*/
107109

108110
/**
109-
* @param {number} limit
110-
* @param {number} offset
111+
* @param {Command} input
111112
* @param {import('ora').Ora} spinner
112113
* @returns {Promise<void|DependenciesData>}
113114
*/
114-
async function searchDeps (limit, offset, spinner) {
115+
async function searchDeps ({ limit, offset, outputJson }, spinner) {
115116
const socketSdk = await setupSdk(getDefaultKey())
116117
// @ts-ignore
117118
const result = await handleApiCall(socketSdk.searchDependencies({ limit, offset }), 'Searching dependencies')
@@ -123,7 +124,32 @@ async function searchDeps (limit, offset, spinner) {
123124
spinner.stop()
124125

125126
console.log('Organization dependencies: \n')
126-
console.log(result.data)
127+
128+
if (outputJson) {
129+
return console.log(result.data)
130+
}
131+
132+
const options = {
133+
columns: [
134+
{ field: 'namespace', name: chalk.cyan('Namespace') },
135+
{ field: 'name', name: chalk.cyan('Name') },
136+
{ field: 'version', name: chalk.cyan('Version') },
137+
{ field: 'repository', name: chalk.cyan('Repository') },
138+
{ field: 'branch', name: chalk.cyan('Branch') },
139+
{ field: 'type', name: chalk.cyan('Type') },
140+
{ field: 'direct', name: chalk.cyan('Direct') }
141+
]
142+
}
143+
144+
const formattedResults = result.data.rows.map((/** @type {{[key:string]: any}} */ d) => {
145+
return {
146+
...d
147+
}
148+
})
149+
150+
const table = chalkTable(options, formattedResults)
151+
152+
console.log(table, '\n')
127153

128154
return {
129155
data: result.data

0 commit comments

Comments
 (0)