From ae2c5e0a17484cbeb15619f0cc425db3f3ac461e Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sat, 23 Aug 2025 20:49:42 +0800 Subject: [PATCH] :lipstick: format --- .github/workflows/test-action.yml | 12 ++--- README_ACTION.md | 44 ++++++++--------- action.yml | 78 +++++++++++++++---------------- bin/cli.ts | 2 +- bin/helpers/merge.ts | 4 +- 5 files changed, 70 insertions(+), 70 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 74193a0..4e80e10 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -1,16 +1,16 @@ -name: 'Test Pake Action' +name: "Test Pake Action" on: workflow_dispatch: inputs: url: - description: 'URL to package' + description: "URL to package" required: true - default: 'https://weekly.tw93.fun' + default: "https://weekly.tw93.fun" name: - description: 'App name' + description: "App name" required: true - default: 'TestApp' + default: "TestApp" jobs: test: @@ -22,7 +22,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: "20" - name: Build Pake App id: build diff --git a/README_ACTION.md b/README_ACTION.md index 14536f1..e3eaaa3 100644 --- a/README_ACTION.md +++ b/README_ACTION.md @@ -8,26 +8,26 @@ Transform any webpage into a lightweight desktop app with a single GitHub Action - name: Build Pake App uses: tw93/Pake@v3 with: - url: 'https://example.com' - name: 'MyApp' + url: "https://example.com" + name: "MyApp" ``` ## Inputs -| Parameter | Description | Required | Default | -|-----------|-------------|----------|---------| -| `url` | Target URL to package | ✅ | | -| `name` | Application name | ✅ | | -| `output-dir` | Output directory | | `dist` | -| `icon` | Custom app icon URL/path | | | -| `width` | Window width | | `1200` | -| `height` | Window height | | `780` | -| `debug` | Enable debug mode | | `false` | +| Parameter | Description | Required | Default | +| ------------ | ------------------------ | -------- | ------- | +| `url` | Target URL to package | ✅ | | +| `name` | Application name | ✅ | | +| `output-dir` | Output directory | | `dist` | +| `icon` | Custom app icon URL/path | | | +| `width` | Window width | | `1200` | +| `height` | Window height | | `780` | +| `debug` | Enable debug mode | | `false` | ## Outputs -| Output | Description | -|--------|-------------| +| Output | Description | +| -------------- | ----------------------------- | | `package-path` | Path to the generated package | ## Examples @@ -45,8 +45,8 @@ jobs: - uses: actions/checkout@v4 - uses: tw93/Pake@v3 with: - url: 'https://weekly.tw93.fun' - name: 'WeeklyApp' + url: "https://weekly.tw93.fun" + name: "WeeklyApp" ``` ### With Custom Icon @@ -54,9 +54,9 @@ jobs: ```yaml - uses: tw93/Pake@v3 with: - url: 'https://example.com' - name: 'MyApp' - icon: 'https://example.com/icon.png' + url: "https://example.com" + name: "MyApp" + icon: "https://example.com/icon.png" width: 1400 height: 900 ``` @@ -74,20 +74,20 @@ jobs: - uses: actions/checkout@v4 - uses: tw93/Pake@v3 with: - url: 'https://example.com' - name: 'CrossPlatformApp' + url: "https://example.com" + name: "CrossPlatformApp" ``` ## How It Works 1. **Auto Setup**: Installs Rust, Node.js dependencies, builds Pake CLI -2. **Build App**: Runs `pake` command with your parameters +2. **Build App**: Runs `pake` command with your parameters 3. **Package Output**: Finds and moves the generated package to output directory ## Supported Platforms - **Linux**: `.deb` packages (Ubuntu runners) -- **macOS**: `.app` and `.dmg` packages (macOS runners) +- **macOS**: `.app` and `.dmg` packages (macOS runners) - **Windows**: `.exe` and `.msi` packages (Windows runners) Use GitHub's matrix strategy to build for multiple platforms simultaneously. diff --git a/action.yml b/action.yml index f7d8ae1..419adcb 100644 --- a/action.yml +++ b/action.yml @@ -1,101 +1,101 @@ -name: 'Pake Web App Builder' -description: 'Transform any webpage into a lightweight desktop app using Rust and Tauri' -author: 'tw93' +name: "Pake Web App Builder" +description: "Transform any webpage into a lightweight desktop app using Rust and Tauri" +author: "tw93" branding: - icon: 'package' - color: 'blue' + icon: "package" + color: "blue" inputs: url: - description: 'Target URL to package' + description: "Target URL to package" required: true - + name: - description: 'Application name' + description: "Application name" required: true - + output-dir: - description: 'Output directory for packages' + description: "Output directory for packages" required: false - default: 'dist' - + default: "dist" + icon: - description: 'Custom app icon URL or path' + description: "Custom app icon URL or path" required: false - + width: - description: 'Window width' + description: "Window width" required: false - default: '1200' - + default: "1200" + height: - description: 'Window height' + description: "Window height" required: false - default: '780' - + default: "780" + debug: - description: 'Enable debug mode' + description: "Enable debug mode" required: false - default: 'false' + default: "false" outputs: package-path: - description: 'Path to the generated package' - + description: "Path to the generated package" + runs: - using: 'composite' + using: "composite" steps: - name: Setup Environment shell: bash run: | # Install Node.js dependencies npm install - + # Build Pake CLI if not exists if [ ! -f "dist/cli.js" ]; then npm run cli:build fi - + # Ensure node is accessible in subsequent steps echo "$(npm bin)" >> $GITHUB_PATH - + # Install Rust/Cargo if needed if ! command -v cargo &> /dev/null; then curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y source ~/.cargo/env echo "$HOME/.cargo/bin" >> $GITHUB_PATH fi - - - name: Build Pake App + + - name: Build Pake App shell: bash run: | # Build arguments ARGS=("${{ inputs.url }}") - + ARGS+=("--name" "${{ inputs.name }}") - + if [ -n "${{ inputs.icon }}" ]; then ARGS+=("--icon" "${{ inputs.icon }}") fi - + ARGS+=("--width" "${{ inputs.width }}") ARGS+=("--height" "${{ inputs.height }}") - + if [ "${{ inputs.debug }}" == "true" ]; then ARGS+=("--debug") fi - + # Create output directory mkdir -p "${{ inputs.output-dir }}" export PAKE_CREATE_APP=1 - + # Run Pake CLI echo "🔧 Running: node dist/cli.js ${ARGS[*]}" node dist/cli.js "${ARGS[@]}" - + # Find generated package and set output PACKAGE=$(find src-tauri/target -type f \( -name "*.deb" -o -name "*.exe" -o -name "*.msi" -o -name "*.dmg" \) 2>/dev/null | head -1) - + # If no file packages found, look for .app directory (macOS) if [ -z "$PACKAGE" ]; then PACKAGE=$(find src-tauri/target -type d -name "*.app" 2>/dev/null | head -1) @@ -109,4 +109,4 @@ runs: else echo "❌ No package found" exit 1 - fi \ No newline at end of file + fi diff --git a/bin/cli.ts b/bin/cli.ts index 25cd1d2..a79de43 100644 --- a/bin/cli.ts +++ b/bin/cli.ts @@ -151,7 +151,7 @@ program if (!url) { program.help({ - error: false + error: false, }); return; } diff --git a/bin/helpers/merge.ts b/bin/helpers/merge.ts index 5201a56..6456d84 100644 --- a/bin/helpers/merge.ts +++ b/bin/helpers/merge.ts @@ -319,8 +319,8 @@ StartupNotify=true tauriConf.app.security = { headers: { 'Cross-Origin-Opener-Policy': 'same-origin', - 'Cross-Origin-Embedder-Policy': 'require-corp' - } + 'Cross-Origin-Embedder-Policy': 'require-corp', + }, }; }