Dave Jarvis' Repositories

git clone https://repo.autonoma.ca/repo/keenwrite.git
#!/usr/bin/env bash

echo "# Third-party libraries"
echo ""

jq -c '.[]' | while read -r library_entry; do
  library_name=$(jq -r '.name' <<< "$library_entry" | xargs)
  library_version=$(jq -r '.version' <<< "$library_entry" | xargs)
  library_homepage_url=$(jq -r '.homepage' <<< "$library_entry" | xargs)
  library_source_url=$(jq -r '.source' <<< "$library_entry" | xargs)
  library_maven_url=$(jq -r '.url' <<< "$library_entry" | xargs)

  echo "## $library_name"
  echo "- **Version:** $library_version"

  # Build the URL line with pipes
  url_line=""
  [[ $library_homepage_url ]] && url_line+="[Homepage](${library_homepage_url//[[:space:]]/})"
  [[ $library_source_url ]] && url_line+="${url_line:+ | }[Source](${library_source_url//[[:space:]]/})"
  [[ $library_maven_url ]] && url_line+="${url_line:+ | }[Maven](${library_maven_url//[[:space:]]/})"
  [[ $url_line ]] && echo "- $url_line"

  license_links=$(jq -r '
    .licenses
    | map(select(.url != null and .url != "") | "[\(.spdx)](\(.url))")
    | join(", ")
  ' <<< "$library_entry")
  [[ $license_links ]] && [[ $license_links != "" ]] && echo "- **License(s):** $license_links"

  developer_list=$(jq -r '.developers | map(trim) | unique | select(length > 0) | join(", ")' <<< "$library_entry")
  [[ $developer_list ]] && echo "- **Developers:** $developer_list"

  echo ""
done

echo ":::"