notebooks/workspaces/frontend/scripts/generate-api.sh

28 lines
663 B
Bash
Executable File

#!/bin/bash
set -euo pipefail
GENERATED_DIR="./src/generated"
HASH_FILE="./scripts/swagger.version"
SWAGGER_COMMIT_HASH=$(cat "$HASH_FILE")
SWAGGER_JSON_PATH="../backend/openapi/swagger.json"
TMP_SWAGGER=".tmp-swagger.json"
if ! git cat-file -e "${SWAGGER_COMMIT_HASH}:${SWAGGER_JSON_PATH}"; then
echo "❌ Swagger file not found at commit $SWAGGER_COMMIT_HASH"
exit 1
fi
git show "${SWAGGER_COMMIT_HASH}:${SWAGGER_JSON_PATH}" >"$TMP_SWAGGER"
swagger-typescript-api generate \
-p "$TMP_SWAGGER" \
-o "$GENERATED_DIR" \
--extract-request-body \
--responses \
--clean-output \
--axios \
--unwrap-response-data \
--modular
rm "$TMP_SWAGGER"