# Maintainer: Marvin Zhang <marvin.beeblebrox@gmail.com>
# Contributor: Daniel M. Capella <polyzen@archlinux.org>
# Contributor: Jerome Leclanche <jerome@leclan.ch>
# Contributor: Maxim Baz <archlinux at maximbaz dot com>

_realname=prettier
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=3.8.2
pkgrel=1
pkgdesc='An opinionated code formatter (mingw-w64)'
arch=('any')
mingw_arch=('ucrt64' 'clang64' 'clangarm64')
url='https://prettier.io'
msys2_repository_url='https://github.com/prettier/prettier'
msys2_references=(
  'archlinux: prettier'
  'purl: pkg:npm/prettier'
)
license=('spdx:MIT')
depends=("${MINGW_PACKAGE_PREFIX}-nodejs")
source=("https://registry.npmjs.org/${_realname}/-/${_realname}-${pkgver}.tgz"
        "prettier.sh")
sha256sums=('917b771c007ff5d11cc96d4fa37df8fac86dd472b74ac0bbdcd70dfafab04c03'
            'b3a516743b4e7dc4a9a7923c4d66b53fc750619f2c5fa7ec8cca974f95f74d06')

package() {
  "${MINGW_PREFIX}"/bin/npm install -g \
    --cache "${srcdir}/npm-cache" \
    --prefix "${pkgdir}${MINGW_PREFIX}" \
    "${srcdir}/${_realname}-${pkgver}.tgz"

  # Fix the shell wrapper to handle winpty correctly
  # npm's default wrapper uses 'exec node "C:/path/to/script.cjs" "$@"'
  # which breaks when `node` invokes winpty or when cygpath mangles arguments.
  install -Dm755 "${srcdir}/prettier.sh" "${pkgdir}${MINGW_PREFIX}/bin/prettier"

  install -Dm644 "${srcdir}/package/LICENSE" \
    "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
}
