mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-02-27 18:22:41 -08:00
fix(renderer): calibrate invisible overlay metrics and hover mapping
This commit is contained in:
63
scripts/dev-watch.sh
Executable file
63
scripts/dev-watch.sh
Executable file
@@ -0,0 +1,63 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
|
||||
cd "$ROOT_DIR"
|
||||
|
||||
electron_args=("$@")
|
||||
if [[ ${#electron_args[@]} -eq 0 ]]; then
|
||||
electron_args=(--start --dev)
|
||||
fi
|
||||
|
||||
if ! command -v bun >/dev/null 2>&1; then
|
||||
echo "[ERROR] bun not found in PATH" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
TS_WATCH_PID=""
|
||||
RENDER_WATCH_PID=""
|
||||
|
||||
cleanup() {
|
||||
local pids=("$TS_WATCH_PID" "$RENDER_WATCH_PID")
|
||||
for pid in "${pids[@]}"; do
|
||||
if [[ -n "$pid" ]] && kill -0 "$pid" 2>/dev/null; then
|
||||
kill "$pid" 2>/dev/null || true
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
trap cleanup EXIT INT TERM
|
||||
|
||||
sync_renderer_assets() {
|
||||
mkdir -p dist/renderer
|
||||
cp src/renderer/index.html src/renderer/style.css dist/renderer/
|
||||
mkdir -p dist/renderer/fonts
|
||||
cp -R src/renderer/fonts/. dist/renderer/fonts/
|
||||
}
|
||||
|
||||
echo "[INFO] Syncing renderer static assets"
|
||||
sync_renderer_assets
|
||||
|
||||
echo "[INFO] Running initial compile"
|
||||
bun run tsc
|
||||
bun run build:renderer
|
||||
|
||||
echo "[INFO] Starting TypeScript watch"
|
||||
bun run tsc --watch --preserveWatchOutput &
|
||||
TS_WATCH_PID=$!
|
||||
|
||||
echo "[INFO] Starting renderer watch"
|
||||
bunx esbuild src/renderer/renderer.ts \
|
||||
--bundle \
|
||||
--platform=browser \
|
||||
--format=esm \
|
||||
--target=es2022 \
|
||||
--outfile=dist/renderer/renderer.js \
|
||||
--sourcemap \
|
||||
--watch &
|
||||
RENDER_WATCH_PID=$!
|
||||
|
||||
echo "[INFO] Launching Electron with args: ${electron_args[*]}"
|
||||
bun run electron . "${electron_args[@]}"
|
||||
Reference in New Issue
Block a user