diff --git a/.github/workflows/typedoc.yml b/.github/workflows/typedoc.yml new file mode 100644 index 000000000..cf283d7d8 --- /dev/null +++ b/.github/workflows/typedoc.yml @@ -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}} diff --git a/packages/core/src/physics/joint/Joint.ts b/packages/core/src/physics/joint/Joint.ts index 8d9f8af17..66925b32c 100644 --- a/packages/core/src/physics/joint/Joint.ts +++ b/packages/core/src/physics/joint/Joint.ts @@ -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 { diff --git a/scripts/typedoc.sh b/scripts/typedoc.sh index fe6c3d1f9..5306333bb 100755 --- a/scripts/typedoc.sh +++ b/scripts/typedoc.sh @@ -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