#!/bin/sh
# Upstream ships no test suite for this package, so this checks that the
# installed library loads and behaves as the package promises.
set -eu

work=$(mktemp -d)
trap 'rm -rf "$work"' EXIT INT TERM
cd "$work"

mkdir -p node_modules/@prosemirror
for dir in /usr/share/nodejs/*; do
	[ -d "$dir" ] || continue
	name=$(basename "$dir")
	[ "$name" = "@prosemirror" ] && continue
	ln -sfn "$dir" "node_modules/$name"
done
for dir in /usr/share/nodejs/@prosemirror/*; do
	ln -sfn "$dir" "node_modules/@prosemirror/$(basename "$dir")"
done

cat > check.mjs <<'EOF'
import {dropCursor} from "prosemirror-dropcursor"

const plugin = dropCursor()
if (!plugin || typeof plugin.spec !== "object") {
  throw new Error("dropCursor() did not return a plugin")
}
console.log("prosemirror-dropcursor loaded")
EOF

node check.mjs
