swagger_generator_flutter/run_swagger.sh

65 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
# 简化版 Swagger CLI 运行脚本
# 提供便捷的命令行界面
# 颜色定义
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
CYAN='\033[0;36m'
NC='\033[0m' # No Color
# 脚本路径
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
CLI_DART_FILE="$SCRIPT_DIR/bin/main.dart"
# 显示帮助
show_help() {
echo -e "${CYAN}🚀 Swagger CLI 工具${NC}"
echo ""
echo -e "${YELLOW}用法: $0 [命令] [选项]${NC}"
echo ""
echo -e "${GREEN}快速命令:${NC}"
echo -e " $0 all # 生成所有文件"
echo -e " $0 models # 生成数据模型"
echo -e " $0 endpoints # 生成API端点"
echo -e " $0 docs # 生成API文档"
echo -e " $0 api # 生成Retrofit API"
echo ""
echo -e "${GREEN}直接使用:${NC}"
echo -e " dart run bin/main.dart generate --help"
echo ""
}
# 主函数
main() {
if [ $# -eq 0 ] || [ "$1" = "help" ] || [ "$1" = "--help" ]; then
show_help
exit 0
fi
case "$1" in
all)
dart run "$CLI_DART_FILE" generate --models --api --split-by-tags
;;
models)
dart run "$CLI_DART_FILE" generate --models
;;
endpoints)
dart run "$CLI_DART_FILE" generate --endpoints
;;
docs)
dart run "$CLI_DART_FILE" generate --docs
;;
api)
dart run "$CLI_DART_FILE" generate --api
;;
*)
echo -e "${YELLOW}未知命令: $1${NC}"
show_help
exit 1
;;
esac
}
main "$@"