#!/usr/bin/env bash create_pull_request() { mapfile -t words < <(curl -sL https://raw.githubusercontent.com/TomBos/TLC/refs/heads/build/word_list.txt) for i in $(seq 1 "$2"); do WORD="${words[i]}" git checkout -b "$WORD" if [[ "$1" == 1 ]]; then git commit --allow-empty -m "Totally Legit Co-Author Co-authored-by: Arch Warden" else git commit --allow-empty -m "Totally Legit Pull Request" fi git push --set-upstream origin "$WORD" gh pr create --base master --head "$WORD" --title "PR from $WORD to master" --body "Pull request from $WORD to master." gh pr merge "$WORD" --merge --delete-branch done }; display_banner() { cat << "EOF" __/\\\\\\\\\\\\\\\__/\\\____________________/\\\\\\\\\_ __\///////\\\/////__\/\\\_________________/\\\////////__ _________\/\\\_______\/\\\_______________/\\\/___________ __________\/\\\_______\/\\\______________/\\\_____________ ___________\/\\\_______\/\\\_____________\/\\\_____________ ____________\/\\\_______\/\\\_____________\//\\\____________ _____________\/\\\_______\/\\\______________\///\\\__________ ______________\/\\\_______\/\\\\\\\\\\\\\\\____\////\\\\\\\\\_ _______________\///________\///////////////________\/////////__ EOF }; make_selection() { echo -e "Select which GitHub achievement you want to unlock: 1) Pair Extraordinaire 2) Pull Shark 3) YOLO 4) Quickdraw \n" read -p "Selected: " SELECTION case $SELECTION in 1) echo "Selected: 1) Pair Extraordinaire" ;; 2) echo "Selected: 2) Pull Shark" ;; 3) echo "Selected: 3) YOLO" ;; 4) echo "Selected: 4) Quickdraw" echo "❌This option is not implemented yet, please come back later" make_selection ;; *) echo "❌Unknown Option !" make_selection ;; esac }; choose_number_of_prs() { case $1 in 1) echo "Selected: 1) Pair Extraordinaire" echo "Code will create 50 PRs to achieve this badge" BRANCH_COUNT=50 ;; 2) echo "Selected: 2) Pull Shark" read -rp "Enter the number of PRs you want (1–150): " input if [[ "$input" =~ ^[0-9]+$ ]] && (( input >= 1 && input <= 150 )); then BRANCH_COUNT=$input echo "Code will create $BRANCH_COUNT PRs" else echo "❌ Invalid input. Please enter a number between 1 and 150." choose_number_of_prs 2 fi ;; 3) echo "Selected: 3) YOLO" echo "Code will create 1 PR to achieve this badge" BRANCH_COUNT=1 ;; 4) echo "Selected: 4) Quickdraw" echo "❌ This option is not implemented yet. Please come back later." make_selection ;; *) echo "❌ Unknown option!" make_selection ;; esac } echo "Checking Github CLI status" gh auth status &>/dev/null if [ $? -ne 0 ]; then echo "User is NOT authenticated with GitHub CLI." exit 1 fi clear && display_banner && make_selection clear && display_banner && choose_number_of_prs "$SELECTION" create_pull_request "$SELECTION" "$BRANCH_COUNT"