
makedepends=(rsync node)

description="JavaScript with syntax for types"
url="http://www.typescriptlang.org"

packager="Great-OS Team"
maintainer="Great-OS Team"

name="typescript"
version="5.9.3"
release=1

PKGMK_KEEP_SOURCES="no"

source=(https://github.com/microsoft/TypeScript/archive/refs/tags/v5.9.3.tar.gz)

prepare() {
    cd TypeScript-$version
    npm ci
}

build() {
    cd TypeScript-$version
    npx hereby LKG
}
package() {
    local mod_dir=/usr/lib/node_modules/$name
    install -d "$PKG"/{usr/bin,$mod_dir}
    ln -s $mod_dir/bin/{tsc,tsserver} "$PKG"/usr/bin
    cd TypeScript-$version
    rsync -r --exclude=.gitattributes bin lib package.json "$PKG"/$mod_dir
    install -Dm644 -t "$PKG"/usr/share/doc/$name README.md SECURITY.md
    install -Dm644 -t "$PKG"/usr/share/licenses/$name ThirdPartyNoticeText.txt
}
