84 lines
1.6 KiB
Bash
84 lines
1.6 KiB
Bash
#!/bin/bash
|
|
|
|
# MetonaToast 构建脚本
|
|
|
|
echo "🍞 MetonaToast 构建脚本"
|
|
echo "========================"
|
|
|
|
# 检查Node.js
|
|
if ! command -v node &> /dev/null; then
|
|
echo "❌ 错误: 未找到Node.js"
|
|
exit 1
|
|
fi
|
|
|
|
# 检查npm
|
|
if ! command -v npm &> /dev/null; then
|
|
echo "❌ 错误: 未找到npm"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ Node.js版本: $(node -v)"
|
|
echo "✅ npm版本: $(npm -v)"
|
|
|
|
# 安装依赖
|
|
echo ""
|
|
echo "📦 安装依赖..."
|
|
npm install
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "❌ 依赖安装失败"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ 依赖安装完成"
|
|
|
|
# 运行测试
|
|
echo ""
|
|
echo "🧪 运行测试..."
|
|
npm test
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "❌ 测试失败"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ 测试通过"
|
|
|
|
# 构建项目
|
|
echo ""
|
|
echo "🔨 构建项目..."
|
|
npm run build
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "❌ 构建失败"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ 构建完成"
|
|
|
|
# 显示构建结果
|
|
echo ""
|
|
echo "📊 构建结果:"
|
|
echo "========================"
|
|
ls -lh dist/
|
|
|
|
echo ""
|
|
echo "✅ 构建成功完成!"
|
|
echo ""
|
|
echo "📁 文件结构:"
|
|
echo " - dist/metona-toast.js (UMD格式)"
|
|
echo " - dist/metona-toast.esm.js (ES Module格式)"
|
|
echo " - dist/metona-toast.cjs.js (CommonJS格式)"
|
|
echo " - dist/metona-toast.min.js (压缩版本)"
|
|
echo " - dist/metona-toast.d.ts (TypeScript声明)"
|
|
echo ""
|
|
echo "🚀 使用方法:"
|
|
echo " 1. 浏览器: <script src='dist/metona-toast.js'></script>"
|
|
echo " 2. ES Module: import MeToast from 'dist/metona-toast.esm.js'"
|
|
echo " 3. CommonJS: const MeToast = require('dist/metona-toast.cjs.js')"
|
|
echo ""
|
|
echo "📝 示例:"
|
|
echo " 打开 site/index.html 查看官网"
|
|
echo " 打开 site/demo.html 查看演示"
|
|
echo ""
|