{
  "metadata": {
    "id": "stremio.perfect.setup.formatter",
    "name": "🍿 Streaming Perfect Setup [Formatter]",
    "description": "This template includes only the formatter styles from the original template in [this](https://numb3rs.stream) guide. Credit to Tamtaro's template which served as inspiration.\nYou can choose the formatting of the stream information view (more details [here](https://numb3rs.stream/guide/7-Additional-Stuff/#understanding-stream-information-view)): \n* ▶︎ **Flat Monochrome Icons** has a cleaner look based on minimalistic white icons. \n* 🎬 **Colorful Icons** contains a colored version with more graphical icons.",
    "source": "external",
    "sourceUrl": "https://numb3rs.stream/templates/AIOStreams-Formatter.json",
    "changelogUrl": "https://numb3rs.stream/templates/AIOStreams-Changelog.md",
    "author": "Lucky Numb3rs",
    "version": "2.0.9",
    "category": "Formatter",
    "serviceRequired": false,
    "inputs": [
      {
        "id": "header.formatter",
        "name": "🎨 Formatter Options",
        "description": "",
        "type": "alert",
        "intent": "info"
      },
      {
        "id": "formatterChoice",
        "name": "🖋️ Formatter Style",
        "description": "Choose the formatting of the stream information view (more details [here](https://numb3rs.stream/guide/7-Additional-Stuff/#understanding-stream-information-view)): \n* ▶︎ **Flat Monochrome Icons** has a cleaner look based on minimalistic white icons. \n* 🎬 **Colorful Icons** contains a colored version with more graphical icons.",
        "type": "select",
        "required": false,
        "default": "color",
        "options": [
          {
            "value": "flat",
            "label": "▶︎ Flat Monochrome Icons"
          },
          {
            "value": "color",
            "label": "🎬 Colorful Icons"
          }
        ]
      },
      {
        "id": "formatterFilename",
        "name": "📝 Show Filename",
        "description": "If enabled, the filenames will also be displayed on the stream information view.",
        "type": "boolean",
        "required": false,
        "default": false
      },
      {
        "id": "credits",
        "name": "Credits",
        "description": "",
        "type": "socials",
        "socials": [
          {
            "id": "website",
            "url": "https://numb3rs.stream"
          },
          {
            "id": "github",
            "url": "https://github.com/luckynumb3rs/stremio-perfect-setup"
          },
          {
            "id": "ko-fi",
            "url": "https://ko-fi.com/luckynumb3rs"
          }
        ]
      }
    ],
    "services": []
  },
  "config": {
    "formatter": {
      "__switch": "inputs.formatterChoice",
      "cases": {
        "flat": {
          "id": "custom",
          "definition": {
            "name": "{service.cached::istrue[\"⚡ \"||\"\"]}{service.cached::isfalse[\"⏳ \"||\"\"]}{stream.type::=p2p[\"🧲 \"||\"\"]}{stream.type::=http[\"🌐 \"||\"\"]}{stream.type::=live[\"📺 \"||\"\"]}{stream.type::=youtube[\"▶️ \"||\"\"]}{stream.type::=archive[\"🗄️ \"||\"\"]}{stream.type::=external[\"↗️ \"||\"\"]}{stream.type::=statistic[\"📊 \"||\"\"]}{stream.type::=info[\"ℹ️ \"||\"\"]}{stream.type::=error[\"⛔ \"||\"\"]}{stream.resolution::exists[\"{stream.resolution::replace('2160p','UHD ⁴ᴷ')::replace('1440p','QHD ²ᴷ')::replace('1080p','FHD    ')::replace('p','P')}   \"||\"\"]}\n{stream.quality::exists[\"⌜{stream.quality::title::replace('Bluray Remux','Remux')::smallcaps}⌟    \"||\"\"]}\n{stream.nSeScore::>=10[\"{stream.nSeScore::pstar::replace('★','◆')::replace('⯪','⬖')::replace('☆','◇')} \"||\"\"]}",
            "description": {
              "__switch": "inputs.formatterFilename",
              "cases": {
                "true": "{stream.editions::exists[\"▶︎  {stream.editions::join(' · ')} \"||\"\"]}\n{stream.encode::exists[\"▣  {stream.encode}  \"||\"\"]}{stream.visualTags::exists[\"✦  {stream.visualTags::join(' · ')}  \"||\"\"]}\n{stream.audioTags::exists[\"♬  {stream.audioTags::join(' · ')}  \"||\"\"]}{stream.audioChannels::exists[\"☊  {stream.audioChannels::join(' · ')} \"||\"\"]}\n{stream.size::>0::and::stream.seasonPack::istrue[\"⧉  \"||\"\"]}{stream.size::>0::and::stream.seasonPack::isfalse[\"◧  \"||\"\"]}{stream.size::>0[\"{stream.size::sbytes}\"||\"\"]}{stream.bitrate::exists[\" · {stream.bitrate::sbitrate::replace('Mbps','ᴹᵇᵖˢ')::replace('Kbps','ᴷᵇᵖˢ')}  \"||\"\"]}{stream.message::~Download[\"{tools.removeLine}\"||\"\"]}{stream.age::exists[\"⟳ {stream.age}\"||\"\"]}\n{stream.proxied::istrue[\"⛊ \"||\"⛉ \"]}{service.shortName::exists[\"[{service.shortName}] \"||\"\"]}{addon.name}{stream.type::replace('debrid',' ')::exists[\" · {stream.type::replace('debrid',' ')::replace('stremio-usenet','nntp')::smallcaps}\"||\"\"]}{service.cached::isfalse::or::stream.type::=p2p::and::stream.seeders::>0[\"  ⇋ {stream.seeders}𖧧  \"||\"\"]}\n{stream.languages::exists[\"⚐  {stream.smallLanguageCodes::join(' · ')::replace('ᴅᴜᴀʟ ᴀᴜᴅɪᴏ','ᴅᴜᴀʟ')::replace('ᴅᴜʙʙᴇᴅ','ᴅᴜʙ')}  \"||\"\"]}{stream.uSubtitles::exists[\"[☰  {stream.uSmallSubtitleCodes::join(' · ')}]  \"||\"\"]}{stream.seadex[\"»  \"||\"\"]}{stream.seadexBest::istrue[\"[ʙᴇsᴛ] \"||\"\"]}{stream.seadex::istrue::and::stream.seadexBest::isfalse[\"[ᴀʟᴛ] \"||\"\"]}\n{stream.filename::exists[\"✎ {stream.filename}  \"||\"\"]}\n{stream.message::exists[\"ⓘ {stream.message::smallcaps}  \"||\"\"]}{stream.message::~ðŸ§[\"{tools.removeLine}\"||\"\"]}"
              },
              "default": "{stream.editions::exists[\"▶︎  {stream.editions::join(' · ')} \"||\"\"]}\n{stream.encode::exists[\"▣  {stream.encode}  \"||\"\"]}{stream.visualTags::exists[\"✦  {stream.visualTags::join(' · ')}  \"||\"\"]}\n{stream.audioTags::exists[\"♬  {stream.audioTags::join(' · ')}  \"||\"\"]}{stream.audioChannels::exists[\"☊  {stream.audioChannels::join(' · ')} \"||\"\"]}\n{stream.size::>0::and::stream.seasonPack::istrue[\"⧉  \"||\"\"]}{stream.size::>0::and::stream.seasonPack::isfalse[\"◧  \"||\"\"]}{stream.size::>0[\"{stream.size::sbytes}\"||\"\"]}{stream.bitrate::exists[\" · {stream.bitrate::sbitrate::replace('Mbps','ᴹᵇᵖˢ')::replace('Kbps','ᴷᵇᵖˢ')}  \"||\"\"]}{stream.message::~Download[\"{tools.removeLine}\"||\"\"]}{stream.age::exists[\"⟳ {stream.age}\"||\"\"]}\n{stream.proxied::istrue[\"⛊ \"||\"⛉ \"]}{service.shortName::exists[\"[{service.shortName}] \"||\"\"]}{addon.name}{stream.type::replace('debrid',' ')::exists[\" · {stream.type::replace('debrid',' ')::replace('stremio-usenet','nntp')::smallcaps}\"||\"\"]}{service.cached::isfalse::or::stream.type::=p2p::and::stream.seeders::>0[\"  ⇋ {stream.seeders}𖧧  \"||\"\"]}\n{stream.languages::exists[\"⚐  {stream.smallLanguageCodes::join(' · ')::replace('ᴅᴜᴀʟ ᴀᴜᴅɪᴏ','ᴅᴜᴀʟ')::replace('ᴅᴜʙʙᴇᴅ','ᴅᴜʙ')}  \"||\"\"]}{stream.uSubtitles::exists[\"[☰  {stream.uSmallSubtitleCodes::join(' · ')}]  \"||\"\"]}{stream.seadex[\"»  \"||\"\"]}{stream.seadexBest::istrue[\"[ʙᴇsᴛ] \"||\"\"]}{stream.seadex::istrue::and::stream.seadexBest::isfalse[\"[ᴀʟᴛ] \"||\"\"]}\n{stream.message::exists[\"ⓘ {stream.message::smallcaps}  \"||\"\"]}{stream.message::~ðŸ§[\"{tools.removeLine}\"||\"\"]}"
            }
          }
        },
        "color": {
          "id": "custom",
          "definition": {
            "name": "{service.cached::istrue[\"⚡ \"||\"\"]}{service.cached::isfalse[\"⏳ \"||\"\"]}{stream.type::=p2p[\"🧲 \"||\"\"]}{stream.type::=http[\"🌐 \"||\"\"]}{stream.type::=live[\"📺 \"||\"\"]}{stream.type::=youtube[\"▶️ \"||\"\"]}{stream.type::=archive[\"🗄️ \"||\"\"]}{stream.type::=external[\"↗️ \"||\"\"]}{stream.type::=statistic[\"📊 \"||\"\"]}{stream.type::=info[\"ℹ️ \"||\"\"]}{stream.type::=error[\"⛔ \"||\"\"]}{stream.resolution::exists[\"{stream.resolution::replace('2160p','UHD ⁴ᴷ')::replace('1440p','QHD ²ᴷ')::replace('1080p','FHD    ')::replace('p','P')}   \"||\"\"]}\n{stream.quality::exists[\"⌜{stream.quality::title::replace('Bluray Remux','Remux')::smallcaps}⌟    \"||\"\"]}\n{stream.nSeScore::>=10[\"{stream.nSeScore::pstar::replace('★','◆')::replace('⯪','⬖')::replace('☆','◇')} \"||\"\"]}",
            "description": {
              "__switch": "inputs.formatterFilename",
              "cases": {
                "true": "{stream.editions::exists[\"🎬  {stream.editions::join(' · ')} \"||\"\"]}\n{stream.encode::exists[\"📼  {stream.encode}  \"||\"\"]}{stream.visualTags::exists[\"🎥  {stream.visualTags::join(' · ')}  \"||\"\"]}\n{stream.audioTags::exists[\"🎵  {stream.audioTags::join(' · ')}  \"||\"\"]}{stream.audioChannels::exists[\"🎧  {stream.audioChannels::join(' · ')} \"||\"\"]}\n{stream.size::>0::and::stream.seasonPack::istrue[\"📚  \"||\"\"]}{stream.size::>0::and::stream.seasonPack::isfalse[\"💾  \"||\"\"]}{stream.size::>0[\"{stream.size::sbytes}\"||\"\"]}{stream.bitrate::exists[\" · {stream.bitrate::sbitrate::replace('Mbps','ᴹᵇᵖˢ')::replace('Kbps','ᴷᵇᵖˢ')}  \"||\"\"]}{stream.message::~Download[\"{tools.removeLine}\"||\"\"]}{stream.age::exists[\"🕒 {stream.age}\"||\"\"]}\n{stream.proxied::istrue[\"🔐 \"||\"🔧 \"]}{service.shortName::exists[\"[{service.shortName}] \"||\"\"]}{addon.name}{stream.type::replace('debrid',' ')::exists[\" · {stream.type::replace('debrid',' ')::replace('stremio-usenet','nntp')::smallcaps}\"||\"\"]}{service.cached::isfalse::or::stream.type::=p2p::and::stream.seeders::>0[\"  ⇋ {stream.seeders}🌱  \"||\"\"]}\n{stream.languages::exists[\"🔊  {stream.languageEmojis::join(' · ')::replace('ᴅᴜᴀʟ ᴀᴜᴅɪᴏ','ᴅᴜᴀʟ')::replace('ᴅᴜʙʙᴇᴅ','ᴅᴜʙ')}  \"||\"\"]}{stream.uSubtitles::exists[\"[💬  {stream.uSubtitleEmojis::join(' · ')}]  \"||\"\"]}{stream.seadex[\"»  \"||\"\"]}{stream.seadexBest::istrue[\"[ʙᴇsᴛ] \"||\"\"]}{stream.seadex::istrue::and::stream.seadexBest::isfalse[\"[ᴀʟᴛ] \"||\"\"]}\n{stream.filename::exists[\"✏️ {stream.filename}  \"||\"\"]}\n{stream.message::exists[\"ℹ️ {stream.message::smallcaps}  \"||\"\"]}{stream.message::~ðŸ§[\"{tools.removeLine}\"||\"\"]}"
              },
              "default": "{stream.editions::exists[\"🎬  {stream.editions::join(' · ')} \"||\"\"]}\n{stream.encode::exists[\"📼  {stream.encode}  \"||\"\"]}{stream.visualTags::exists[\"🎥  {stream.visualTags::join(' · ')}  \"||\"\"]}\n{stream.audioTags::exists[\"🎵  {stream.audioTags::join(' · ')}  \"||\"\"]}{stream.audioChannels::exists[\"🎧  {stream.audioChannels::join(' · ')} \"||\"\"]}\n{stream.size::>0::and::stream.seasonPack::istrue[\"📚  \"||\"\"]}{stream.size::>0::and::stream.seasonPack::isfalse[\"💾  \"||\"\"]}{stream.size::>0[\"{stream.size::sbytes}\"||\"\"]}{stream.bitrate::exists[\" · {stream.bitrate::sbitrate::replace('Mbps','ᴹᵇᵖˢ')::replace('Kbps','ᴷᵇᵖˢ')}  \"||\"\"]}{stream.message::~Download[\"{tools.removeLine}\"||\"\"]}{stream.age::exists[\"🕒 {stream.age}\"||\"\"]}\n{stream.proxied::istrue[\"🔐 \"||\"🔧 \"]}{service.shortName::exists[\"[{service.shortName}] \"||\"\"]}{addon.name}{stream.type::replace('debrid',' ')::exists[\" · {stream.type::replace('debrid',' ')::replace('stremio-usenet','nntp')::smallcaps}\"||\"\"]}{service.cached::isfalse::or::stream.type::=p2p::and::stream.seeders::>0[\"  ⇋ {stream.seeders}🌱  \"||\"\"]}\n{stream.languages::exists[\"🔊  {stream.languageEmojis::join(' · ')::replace('ᴅᴜᴀʟ ᴀᴜᴅɪᴏ','ᴅᴜᴀʟ')::replace('ᴅᴜʙʙᴇᴅ','ᴅᴜʙ')}  \"||\"\"]}{stream.uSubtitles::exists[\"[💬  {stream.uSubtitleEmojis::join(' · ')}]  \"||\"\"]}{stream.seadex[\"»  \"||\"\"]}{stream.seadexBest::istrue[\"[ʙᴇsᴛ] \"||\"\"]}{stream.seadex::istrue::and::stream.seadexBest::isfalse[\"[ᴀʟᴛ] \"||\"\"]}\n{stream.message::exists[\"ℹ️ {stream.message::smallcaps}  \"||\"\"]}{stream.message::~ðŸ§[\"{tools.removeLine}\"||\"\"]}"
            }
          }
        }
      }
    }
  }
}
