#!/bin/zsh cd "$(dirname "$0")" set -euo pipefail VERSION=$(grep -o 'apollo-ios", exact: "[^"]*"' "App/Packages/AffineGraphQL/Package.swift" | sed 's/.*exact: "\([^"]*\)".*/\1/') [ -z "$VERSION" ] && { echo "โŒ Failed to extract version"; exit 1; } echo "๐Ÿ“ฆ Apollo Version: $VERSION" sed -i '' "s|apollo-ios\.git\", from: \"[^\"]*\"|apollo-ios.git\", from: \"$VERSION\"|" "App/Packages/Intelligents/Package.swift" echo "โœ… Version synced" mkdir -p "App/Packages/AffineGraphQL/apollo-ios-cli" curl -L "https://github.com/apollographql/apollo-ios/releases/download/$VERSION/apollo-ios-cli.tar.gz" | tar -xz -C "App/Packages/AffineGraphQL/apollo-ios-cli" echo "โœ… CLI downloaded" CLI_BIN=$(find App/Packages/AffineGraphQL/apollo-ios-cli -type f -perm +111 -name 'apollo-ios-cli' | head -n 1) [ -z "$CLI_BIN" ] && { echo "โŒ apollo-ios-cli executable not found"; exit 1; } echo "๐Ÿ”ง Using binary tool at: $CLI_BIN" $CLI_BIN generate --path "apollo-codegen-config.json" --ignore-version-mismatch echo "โœ… Code generated" rm -rf "App/Packages/AffineGraphQL/apollo-ios-cli" echo "๐Ÿงน Cleaned up"