This repository has been archived on 2026-04-03. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
core/scripts/build-editor.sh
2026-02-28 11:58:27 +00:00

45 lines
1.3 KiB
Bash

#!/bin/sh
# ==========================================
# scripts/build-editor.sh — Build CM6 Bundle
# ==========================================
# Shared by Dockerfile.frontend, Dockerfile (unified),
# and local development.
#
# Usage:
# ./scripts/build-editor.sh # → src/vendor/codemirror/
# ./scripts/build-editor.sh /build/dist # → /build/dist/ (Docker)
#
# Prerequisites: Node.js 20+, npm
# ==========================================
set -e
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
EDITOR_DIR="${SCRIPT_DIR}/../src/editor"
OUTPUT_DIR="${1:-${SCRIPT_DIR}/../src/vendor/codemirror}"
if [ ! -d "${EDITOR_DIR}" ]; then
echo "❌ Editor source not found: ${EDITOR_DIR}"
exit 1
fi
cd "${EDITOR_DIR}"
# Install dependencies if not already present (Docker will have run npm ci)
if [ ! -d node_modules ]; then
echo "📦 Installing CM6 dependencies..."
if [ -f package-lock.json ]; then
npm ci --loglevel=warn
else
echo " ⚠️ No package-lock.json — using npm install"
npm install --loglevel=warn
fi
fi
mkdir -p "${OUTPUT_DIR}"
echo "🔨 Building CM6 bundle..."
node build.mjs --outdir="${OUTPUT_DIR}"
echo "✅ CM6 bundle → ${OUTPUT_DIR}"
ls -lh "${OUTPUT_DIR}"/codemirror.bundle.* 2>/dev/null || true