#!/bin/bash set -eo pipefail DOC_ROOT="../doc" CLIENT_DOC="${DOC_ROOT}/client-documents" CORE_DOC="${DOC_ROOT}/core-documents" clean_dirs() { for dir in "${CLIENT_DOC}" "${CORE_DOC}"; do if [ -d "${dir}" ]; then echo "Cleaning: ${dir}" rm -rf "${dir}" || return 1 fi done } gen_client_docs() { echo "Generating client docs..." pushd ../client >/dev/null if ! cargo doc --no-deps > /dev/null 2>&1; then echo "[ERROR] Client docs generation failed" return 1 fi local src_path="../shared/target/doc/there_is_nopads_client" if [ -d "${src_path}" ]; then mkdir -p "${CLIENT_DOC%/*}" mv "${src_path}" "${CLIENT_DOC}" && \ echo "[SUCCESS] Client docs moved to: ${CLIENT_DOC}" else echo "[ERROR] Client docs not found at ${src_path}" return 1 fi popd >/dev/null } gen_core_docs() { echo "Generating core docs..." pushd ../core >/dev/null if ! cargo doc --no-deps > /dev/null 2>&1; then echo "[ERROR] Core docs generation failed" return 1 fi local src_path="../shared/target/doc/there_is_nopads_core" if [ -d "${src_path}" ]; then mkdir -p "${CORE_DOC%/*}" mv "${src_path}" "${CORE_DOC}" && \ echo "[SUCCESS] Core docs moved to: ${CORE_DOC}" else echo "[ERROR] Core docs not found at ${src_path}" return 1 fi popd >/dev/null } main() { clean_docs gen_client_docs gen_core_docs } main