#!/usr/bin/env bash # JSC 知識庫寫入工具的入口。實作在 book.ts(TypeScript)。 # Node 內建支援 TypeScript(22.18 以上且編入 amaro)時直接執行,否則用 npx 啟動固定版本的 tsx。 set -u command -v node >/dev/null || { echo "找不到 node,請安裝 Node 20 以上。" >&2; exit 127; } ts="$(dirname "$(readlink -f "$0")")/book.ts" if [ "$(node -p 'process.config.variables.node_use_amaro' 2>/dev/null)" = true ] \ && node -e 'process.exit(+process.versions.node.split(".")[0] >= 23 || /^22\.(1[89]|[2-9][0-9])\./.test(process.versions.node) ? 0 : 1)'; then exec node --disable-warning=ExperimentalWarning "$ts" "$@" fi command -v npx >/dev/null || { echo "找不到 npx,無法啟動 tsx。" >&2; exit 127; } exec npx --yes tsx@4.20.5 "$ts" "$@"