#!/usr/bin/env bash

list_help()
{
  log "

Usage:

  bdsm extension list <action>

Actions:

  installed - List installed extensions
  available - List available extensions
  help      - Show this help text

"
}

list_installed()
{
  local ext_path extensions
  for ext_path in $(extensions_search_paths)
  do
    extensions=( $(extensions_installed $ext_path) )

    if array_is_nonempty extensions
    then
      log "Extensions installed in ${ext_path##$bdsm_path\/extensions\/}:\n"
      echo ${extensions[@]} | xargs -s 76 | xargs -I '{}' echo "  {}"
      echo ""
    else
      log "# No $ext_path extensions currently installed.\n"
    fi
  done
}

list_uris()
{
  log "BDSM: Not implemented yet" #$(cat $bdsm_path/.uri)"
  log "BDSM internal extensions: $(cat $bdsm_path/extensions/internal/.uri)"
  for extension in $(extensions_installed $bdsm_path/extensions/external)
  do
    log "BDSM external extension $extension: $(cat $bdsm_path/extensions/external/$extension/.uri)"
  done
}

list_available()
{
  NIY "available external extensions repo"
}
