hunk.code_window:   pnpm-list: ^1.0.0
     pnpm-logger: ^0.6.1
     ramda: ^0.24.1
     rimraf: ^2.5.4
     supi: ^0.2.21
     text-table: ^0.2.0
     tslint: ^5.4.2
     typescript: ^2.4.1
  
hunk.labels: keep keep keep add keep keep keep keep
hunk.after_edit:   strip-color: ^0.1.0
  
hunk.file_path: shrinkwrap.yaml
hunk.type: add
file: import path = require('path')
  import outdated, {
    forPackages as outdatedForPackages
  } from '@pnpm/outdated'
  import {PnpmOptions} from 'supi'
  import table = require('text-table')
  import chalk = require('chalk')
  
  const LAYOUT_VERSION = '1'
  
  export default async function (
    args: string[],
    opts: {
      prefix: string,
      global: boolean,
      independentLeaves: boolean,
      offline: boolean,
      store: string,
      proxy?: string,
      httpsProxy?: string,
      localAddress?: string,
      cert?: string,
      key?: string,
      ca?: string,
      strictSsl: boolean,
      fetchRetries: number,
      fetchRetryFactor: number,
      fetchRetryMintimeout: number,
      fetchRetryMaxtimeout: number,
      userAgent: string,
      tag: string,
      networkConcurrency: number,
      rawNpmConfig: Object,
      alwaysAuth: boolean,
    },
    command: string
  ) {
    let prefix: string
    if (opts.global) {
      prefix = path.join(opts.prefix, LAYOUT_VERSION)
      if (opts.independentLeaves) {
        prefix += '_independent_leaves'
      }
    } else {
      prefix = opts.prefix
    }
  
    const outdatedPkgs = args.length
      ? await outdatedForPackages(args, prefix, opts)
      : await outdated(prefix, opts)
  
    const columnNames = ['Package', 'Current', 'Wanted', 'Latest'].map(txt => chalk.underline(txt))
    console.log(
      table([columnNames].concat(
        outdatedPkgs.map(outdated => [
          chalk.yellow(outdated.packageName),
          outdated.current || 'missing',
          chalk.green(outdated.wanted),
          chalk.magenta(outdated.latest),
        ])
      ))
    )
  }
  