# Maintainer: Simon Legner <Simon.Legner@gmail.com>
# Contributor: George Rawlinson <george@rawlinson.net.nz>

pkgname=rollup
pkgver=2.66.0
pkgrel=1
pkgdesc="Next-generation ES6 module bundler"
arch=(any)
url="https://rollupjs.org/"
license=('MIT')
depends=('nodejs')
makedepends=('npm' 'jq')
source=("$pkgname-$pkgver.tar.gz::https://registry.npmjs.org/$pkgname/-/$pkgname-$pkgver.tgz")
noextract=("$pkgname-$pkgver.tar.gz")
sha512sums=('2fa98a3a47723fc1cae642895da8961bb2990ee98f263ba8d4ff9c7f21ce24f34d4cadcca1eef3087e7e7f2eeff295661d7b65c68af36818ef901301db7b3df2')
b2sums=('8c6d1b6e868091c669e60163226e09fb917e2b5932a61d68456e5df9a26c7c861a0da74882f744253dfc26c6b3b7c5e2a37399af8c135a434ce6a81755b72b5d')

package() {
  local NPM_FLAGS=(--no-audit --no-fund --no-update-notifier)

  npm install \
    --global \
    --prefix "$pkgdir/usr" \
    --cache "$srcdir/npm-cache" \
    "${NPM_FLAGS[@]}" \
    "$pkgname-$pkgver.tar.gz"

  # install licenses
  install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" \
    "$pkgdir/usr/lib/node_modules/rollup/LICENSE.md"

  # install documentation
  install -vDm644 -t "$pkgdir/usr/share/doc/$pkgname" \
    "$pkgdir/usr/lib/node_modules/rollup/"{CHANGELOG,README}.md

  # remove references to ${src,pkg}dir
  local tmppackage="$(mktemp)"
  local pkgjson="$pkgdir/usr/lib/node_modules/$pkgname/package.json"
  jq '.|=with_entries(select(.key|test("_.+")|not))' "$pkgjson" > "$tmppackage"
  mv "$tmppackage" "$pkgjson"
  chmod 644 "$pkgjson"

  # npm gives ownership of ALL FILES to build user
  # https://bugs.archlinux.org/task/63396
  chown -R root:root "$pkgdir"
}