feat: Replace foliate-js submodule with npm git dependency
Migrate from git submodule to npm package management for better developer experience and simplified deployment. Changes: - Add @bookhoard/foliate-js from GitHub fork (john-okeefe/foliate-js#bookhoard-panel-detection) - Update vite alias to point to node_modules instead of vendor - Delete .gitmodules (no submodules tracked) - Remove scripts/setup-git-hooks.sh (no longer needed) - Delete web/vendor/foliate-js/ submodule directory - Remove sc-commit git alias (submodule-specific) Benefits: - Standard npm workflow (npm install / npm update) - No authentication issues for end users (public GitHub) - Simpler deployment (npm ci in containers) - foliate-js protected in node_modules (AI won't rewrite) - Independent project management - Cleaner git history Technical details: - Import remains unchanged: import "foliate-js/view.js" - Vite alias maps "foliate-js" to "/node_modules/@bookhoard/foliate-js" - Build verified working (reader.js includes foliate-js) - Package installed from git branch: bookhoard-panel-detection
This commit is contained in:
@@ -1,24 +0,0 @@
|
||||
#!/bin/bash
|
||||
# One-time setup for git hooks on this machine
|
||||
echo "🔒 Installing pre-push safety hook to prevent pushing with uncommitted submodule changes..."
|
||||
# Create hooks directory
|
||||
mkdir -p .git/hooks
|
||||
# Create pre-push hook
|
||||
cat >.git/hooks/pre-push <<'EOF'
|
||||
#!/bin/bash
|
||||
# Prevent pushing if submodules have uncommitted changes
|
||||
uncommitted=$(git submodule foreach --quiet 'if [ "$(git status --porcelain)" != "" ]; then echo $name; fi')
|
||||
if [ -n "$uncommitted" ]; then
|
||||
echo "❌ ERROR: Submodules have uncommitted changes:"
|
||||
echo "$uncommitted"
|
||||
echo "Commit submodules first (or use git sc-commit)"
|
||||
exit 1
|
||||
fi
|
||||
EOF
|
||||
# Make hook executable
|
||||
chmod +x .git/hooks/pre-push
|
||||
# Add git alias for submodule commit
|
||||
git config --global alias.sc-commit '!sh -c "git submodule foreach \"git add -A && git commit -m \\\"$1\\\" && git push\"" -'
|
||||
echo "✅ Git hooks and alias installed!"
|
||||
echo " - Pre-push hook: Checks for uncommitted submodule changes"
|
||||
echo " - Alias: 'git sc-commit' to commit and push all submodules"
|
||||
Reference in New Issue
Block a user