name: "🗃️ Base content"
category: core
description:
examples:
  default1: https://github.com/lowlighter/metrics/blob/examples/metrics.classic.svg
  default2: https://github.com/lowlighter/metrics/blob/examples/metrics.organization.svg
supports:
  - user
  - organization
  - repository
scopes:
  - public_access
inputs:

  # Base content
  base:
    description: |
      Base content

      The following sections are supported:
      * `header`, which usually contains username, two-week commits calendars and a few additional data
      * `activity`, which contains recent activity (commits, pull requests, issues, etc.)
      * `community`, which contains community stats (following, sponsors, organizations, etc.)
      * `repositories`, which contains repository stats (license, forks, stars, etc.)
      * `metadata`, which contains information about generated metrics

      These are all enabled by default, but it is possible to explicitly opt out from them.
    type: array
    format: comma-separated
    default: header, activity, community, repositories, metadata
    values:
      - header
      - activity
      - community
      - repositories
      - metadata

  base_indepth:
    extras: yes
    description: |
      Indepth mode

      Enabling this will consume additional API queries to fetch more data.
      This currently improves the accuracy of the following statistics:
        - total commits
        - total issues
        - total pull requests
        - total pull requests reviews
        - total repositories contributed to
    type: boolean
    default: no

  base_hireable:
    description: |
      Display `Available for hire!` in header section
    type: boolean
    default: no

  repositories:
    description: |
      Repositories to fetch

      A higher value result in more accurate metrics but can hit GitHub API rate-limit more easily (especially with a lot of plugins enabled)
    type: number
    default: 100
    min: 0

  repositories_batch:
    description: |
      Repositories to fetch at a time

      If you receive `Something went wrong while executing your query` (which is usually caused by API timeout),
      try lowering this value.
    type: number
    default: 100
    max: 100
    min: 1

  repositories_forks:
    description: Include forks
    type: boolean
    default: no

  repositories_affiliations:
    description: |
      Repositories affiliations
      - `owner`: owned repositories
      - `collaborator`: repositories with push access
      - `organization_member`: repositories from an organization where user is a member

      Some plugin outputs may be affected by this setting too.

      Set to `""` to disable and fetch all repositories related to you.
      Broad affiliation will result in less representative metrics.
    type: array
    format: comma-separated
    default: owner
    values:
      - owner
      - collaborator
      - organization_member

  repositories_skipped:
    description: Default skipped repositories
    type: array
    format: comma-separated
    default: ""
    example: my-repo-1, my-repo-2, owner/repo-3, ...
    global: yes

  users_ignored:
    description: |
      Default ignored users

      Note that email are supported only commits-related elements.
    type: array
    format: comma-separated
    default: github-actions[bot], dependabot[bot], dependabot-preview[bot], actions-user, action@github.com
    global: yes

  commits_authoring:
    description: |
      Identifiers that has been used for authoring commits

      Specify names, surnames, username, email addresses that has been used in the past that can be used to detect commits ownerships in some plugins
    type: array
    format: comma-seperated
    default: .user.login
    example: lowlighter, lowlighter@users.noreply.github.com
    global: yes
    preset: no
