| 12345678910111213141516171819202122 |
- #!/bin/sh
- # dsh launcher: runs the apps/cli `dsh` bin FROM SOURCE through Node's native
- # TypeScript transform, so a symlink from anywhere (e.g. ~/.local/bin/dsh)
- # always executes the current working tree without a build step.
- set -eu
- # Resolve symlink chains without readlink -f (not on every macOS).
- script=$0
- while [ -L "$script" ]; do
- target=$(readlink "$script")
- case $target in
- /*) script=$target ;;
- *) script=$(dirname "$script")/$target ;;
- esac
- done
- root=$(CDPATH='' cd -- "$(dirname -- "$script")/.." && pwd)
- # The preloader projects this checkout's tsconfig paths into Node resolution;
- # TypeScript transformation itself remains Node-owned (no tsx/esbuild hook).
- exec node --experimental-transform-types \
- --import "$root/scripts/tspath-loader.ts" \
- "$root/apps/cli/src/bin.ts" "$@"
|