feat: add github action to generate typedoc json automatically

This commit is contained in:
Kbscript
2025-02-13 16:39:02 +08:00
parent 24d25898bf
commit ff38b2b999
3 changed files with 70 additions and 8 deletions

63
.github/workflows/typedoc.yml vendored Normal file
View File

@@ -0,0 +1,63 @@
# This is a basic workflow to help you get started with Actions
name: Generate TypeDoc
on:
push:
tags:
- "v*"
workflow_dispatch:
jobs:
release:
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write
steps:
- name: Checkout Engine repo
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
run_install: true
# after pnpm
- name: Use Node.js LTS
uses: actions/setup-node@v4
with:
node-version: '>=22.6.0'
registry-url: https://registry.npmjs.org/
cache: pnpm
- name: Ensure TypeDoc Directory Exists
run: mkdir -p ${{ github.workspace }}/galacean-typedoc/dist
- name: Create package.json for galacean-typedoc
run: |
VERSION=$(jq -r '.version' ${{ github.workspace }}/packages/galacean/package.json)
echo "{\"name\": \"galacean-typedoc\", \"version\": \"$VERSION\"}" > ${{ github.workspace }}/galacean-typedoc/package.json
cat ${{ github.workspace }}/galacean-typedoc/package.json
- name: Set execute permission for typedoc.sh
run: chmod +x ./scripts/typedoc.sh
- name: Generate TypeDoc Json
run: ./scripts/typedoc.sh
- name: Upload Typedoc JSON to CDN
uses: galacean/publish@main
if: success() || failure()
with:
publish: false
packages: |
galacean-typedoc
env:
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
NPM_CONFIG_PROVENANCE: true
OASISBE_UPLOAD_URL: https://oasisbe.alipay.com/api/file/no-auth/crypto/upload
OASISBE_REQUEST_HEADER: ${{secrets.OASISBE_REQUEST_HEADER}}
OASISBE_PUBLIC_KEY: ${{secrets.OASISBE_PUBLIC_KEY}}

View File

@@ -285,7 +285,7 @@ export abstract class Joint extends Component {
Quaternion.invert(connectedCollider.entity.transform.worldRotationQuaternion, quat);
}
Quaternion.multiply(quat, this.entity.transform.worldRotationQuaternion, quat);
this._nativeJoint?.setRotation(quat);
// this._nativeJoint?.setRotation(quat);
}
private _updateActualAnchor(flag: AnchorOwner): void {

View File

@@ -4,20 +4,19 @@ set -euo pipefail
# generate declaration files via typedoc
ENGINE_PATH="$(pwd)"
TYPEDOC="typedoc@0.23.28"
# Set default output directory if not provided
OUTPUT_DIR=${1:-./api}
# Validate required environment variable
if [ -z "${TYPEDOC:-}" ]; then
echo "Error: TYPEDOC environment variable is not set" >&2
exit 1
fi
for directory in ${ENGINE_PATH}/packages/*
do
if [ -d $directory ]; then
bn=`basename $directory`;
echo "typedoc compiling $directory"
npx $TYPEDOC --version
npx $TYPEDOC --json api/$bn.json --tsconfig $directory/tsconfig.json $directory/src/index.ts;
SUCCESS+=("api/$bn.json")
npx $TYPEDOC --json ${OUTPUT_DIR}/$bn.json --tsconfig $directory/tsconfig.json $directory/src/index.ts;
SUCCESS+=("${OUTPUT_DIR}/$bn.json")
fi
done