name: Auto-label TUI Issues

on:
  issues:
    types: [opened]

jobs:
  auto-label:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      issues: write
    steps:
      - name: Add opentui label
        uses: actions/github-script@v7
        with:
          github-token: ${{ secrets.GITHUB_TOKEN }}
          script: |
            const issue = context.payload.issue;
            const title = issue.title;
            const description = issue.body || '';

            // Check for version patterns like v1.0.x or 1.0.x
            const versionPattern = /\b[v]?1\.0\.[x\d]\b/i;

            if (versionPattern.test(title) || versionPattern.test(description)) {
              await github.rest.issues.addLabels({
                owner: context.repo.owner,
                repo: context.repo.repo,
                issue_number: issue.number,
                labels: ['opentui']
              });
              
              await github.rest.issues.addAssignees({
                owner: context.repo.owner,
                repo: context.repo.repo,
                issue_number: issue.number,
                assignees: ['thdxr']
              });
            }
