-// eslint-disable @typescript-eslint/no-unnecessary-type-assertion
-
-import { registerTSPaths } from '../helpers/register-ts-paths'
-registerTSPaths()
-
-import * as program from 'commander'
-import * as prompt from 'prompt'
-import { getNetrc, getSettings, writeSettings } from './cli'
+import CliTable3 from 'cli-table3'
+import { OptionValues, program } from 'commander'
import { isUserUsernameValid } from '../helpers/custom-validators/users'
-import { getAccessToken } from '../../shared/extra-utils'
-import * as CliTable3 from 'cli-table3'
+import { assignToken, buildServer, getNetrc, getSettings, writeSettings } from './cli'
+
+import prompt = require('prompt')
async function delInstance (url: string) {
const [ settings, netrc ] = await Promise.all([ getSettings(), getNetrc() ])
? url.indexOf('/', 8)
: url.length
- return url.substr(0, urlLength)
+ return url.substring(0, urlLength)
}
program
.option('-U, --username <username>', 'Username')
.option('-p, --password <token>', 'Password')
.option('--default', 'add the entry as the new default')
- .action((options: program.OptionValues) => {
+ .action((options: OptionValues) => {
/* eslint-disable no-import-assign */
prompt.override = options
prompt.start()
// Check credentials
try {
// Strip out everything after the domain:port.
- // @see https://github.com/Chocobozzz/PeerTube/issues/3520
+ // See https://github.com/Chocobozzz/PeerTube/issues/3520
result.url = stripExtraneousFromPeerTubeUrl(result.url)
- await getAccessToken(result.url, result.username, result.password)
+ const server = buildServer(result.url)
+ await assignToken(server, result.username, result.password)
} catch (err) {
console.error(err.message)
process.exit(-1)