name: 🦑 Splatoon
category: community
description: |
  This plugin displays your Splatoon 3 recent matches based on data fetched from Splatnet.
disclaimer: |
  This plugin is not affiliated, associated, authorized, endorsed by, or in any way officially connected with [Nintendo](https://www.nintendo.com) or [Splatoon](https://splatoon.nintendo.com).
  All product and company names are trademarks™ or registered® trademarks of their respective holders.

  This specific plugin is licensed under GPL-3.0 rather than MIT to comply with [spacemeowx2/s3si.ts](https://github.com/spacemeowx2/s3si.ts) license.

  Note that *Nintendo Switch Online* web tokens usage are not explicitly allowed by *Nintendo*, use at your own risk.
examples:
  default: https://github.com/lowlighter/metrics/blob/examples/metrics.plugin.splatoon.svg
authors:
  - lowlighter
supports:
  - user
  - organization
scopes: []
inputs:

  plugin_splatoon:
    description: |
      Enable splatoon plugin
    type: boolean
    default: no

  plugin_splatoon_token:
    description: |
      Splatnet token
    type: token
    default: ""
    extras:
      - metrics.api.nintendo.splatnet

  plugin_splatoon_sections:
    description: |
      Displayed sections

      - `player` for overall player recap
      - `versus` for *Turf war* and *Anarchy battle* matches
      - `salmon-run` for *Salmon run next wave* matches
    type: array
    format: comma-separated
    default: player, versus, salmon-run
    options:
      - player
      - versus
      - salmon-run

  plugin_splatoon_versus_limit:
    description: |
      Display limit (Versus)
    type: number
    default: 1
    min: 0
    max: 6

  plugin_splatoon_salmon_limit:
    description: |
      Display limit (Salmon run)
    type: number
    default: 1
    min: 0
    max: 6

  plugin_splatoon_statink:
    description: |
      stat.ink integration

      If set, fetched data will also be uploaded to stat.ink
      Requires [`plugin_splatoon_statink_token`](/source/plugins/community/splatoon/README.md#plugin_splatoon_statink_token) to be set
    type: boolean
    default: no
    extras:
      - metrics.api.statink

  plugin_splatoon_statink_token:
    description: |
      stat.ink token
    type: token
    default: ""

  # ====================================================================================
  # 🚧 Options below are mostly used for testing

  plugin_splatoon_source:
    description: |
      Source

      - `splatnet` will fetch data from Splatnet using [spacemeowx2/s3si.ts](https://github.com/spacemeowx2/s3si.ts) tool
      - `local` will assume `s3si/export` directory already exists and is populated (use this when developping new features for this plugin to save network resources and time)
      - `mocks` will use `s3si/mocks` directory (use this when developping new features for this plugin to avoid setting up a NSO token)
    type: string
    default: splatnet
    values:
      - splatnet
      - local
      - mocks
    testing: yes
    preset: no
