Classificações da liga fornecidas aparecem com registros, pontos, forma recente, zonas de qualificação e favoritos, através de grupos rotativos e visualizações de canto. Primetime introduz molas escalonadas de linha, acentos ciano para estados normais e um fundo lento de pódio e classificação. Rebaixamento e derrotas usam âmbar, enquanto chaves de equipamento esportivo compartilhado marcam o líder da zona de título fornecida. Um pequeno sinal marca atualizações passadas do feed existentes, mudanças de grupo e transferências de canto de cinco segundos. Classificação, seleção de coluna, fixação de favorito e paginação mantêm suas regras existentes. Uma tabela com mais de quatorze linhas divide-se em páginas equilibradas que se alternam com os grupos, algumas equipes preenchem a tela em tamanho maior, cada nome compartilha um tamanho e quebra em palavras, e um feed de um dia anterior mostra seu dia e sinaliza sua idade. Sob movimento reduzido, é exibida uma imagem composta.
Cartão ao vivo
Categoria: Esportes. Tags: Classificações e rankings, Esportes em equipe, Escolas e campi.
Layouts
Este cartão em tela cheia preenche toda a tela em paisagem ou retrato e não é colocado como canto, chip ou faixa.
Layouts: cheio. Formas: paisagem, retrato.
Layouts, temas e publicação de cartões. Veja os cartões.
Dados e privacidade
Feed: screenrig.standings/v1.
Documentos do feed carregam atribuição da fonte. O Player fornece o feed para o cartão.
Propriedades
Para tema, fundo, destaque e posição, veja Propriedades comuns.
Defina as propriedades estáticas nos params do cartão ao criá-lo. O documento de dados dele contém apenas propriedades dinâmicas. Linhas aninhadas descrevem o conteúdo da propriedade pai.
Propriedades estáticas
| Nome | Tipo | Padrão | Valores e limites | Descrição |
|---|---|---|---|---|
title | string | "" | maxLength: 40 | Vazio usa o nome da liga. |
count | integer | 10 | mínimo: 1; máximo: 24 | Equipes mostradas do topo da tabela; um favorito abaixo do corte fica na última colocação. |
group | string | "" | maxLength: 40 | Nome de um grupo (uma conferência, uma divisão). Páginas vazias percorrem todos os grupos. |
favourite | string | "" | maxLength: 8 | O código curto de um time; sua linha é destacada e seu grupo permanece na tela. |
showForm | boolean | true | Mostrar os últimos resultados de cada equipe. | |
pageSeconds | integer | 12 | mínimo: 5; máximo: 60 | Segundos que cada grupo permanece ao mudar de página. |
sport | string | "other" | "hockey", "soccer", "basketball", "football", "baseball", "other" | |
hour12 | boolean | false | ||
timeZone | string, nulo | null | ||
backgroundColor | string, nulo | null | padrão: "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$" | Substitui o fundo e a placa do cartão por uma cor plana ordenada por CSS. #RRGGBBAA fornece opacidade. background none tem precedência. |
textColor | string, nulo | null | padrão: "^#[0-9A-Fa-f]{6}([0-9A-Fa-f]{2})?$" | Substitui as cores do texto principal e secundário. As cores de destaque e status semântico mantêm seus papéis. |
Propriedades dinâmicas
| Nome | Tipo | Padrão | Valores e limites | Descrição |
|---|---|---|---|---|
league | objeto, nulo | null | additionalProperties: false | A competição a que a tabela se refere; o nome dela é o título quando title está vazio. A do feed prevalece. |
league.name | string | maxLength: 60; Obrigatório | ||
season | string | "" | maxLength: 20 | A temporada, por exemplo 2026–27; a do feed prevalece. |
zones | array | [] | minItems: 0; maxItems: 4 | Nomes para a legenda das barras coloridas, um por tipo; os do feed prevalecem. |
zones[].kind | string | "champion", "qualify", "playoff", "relegation"; Obrigatório | ||
zones[].label | string | maxLength: 40 | ||
groups | array | [] | minItems: 0; maxItems: 20 | As tabelas, os mesmos grupos de groups no feed screenrig.standings/v1. Um feed prevalece quando presente; o armazenamento de dados fornece as mesmas linhas caso contrário. |
groups[].name | string | maxLength: 40 | Uma conferência, uma divisão ou um grupo. Um nome igual ao da liga não é exibido. | |
groups[].rows | array | minItems: 0; maxItems: 40; Obrigatório | ||
groups[].rows[].rank | integer | mínimo: 1; máximo: 999 | A posição no grupo; as linhas sem posição mantêm a ordem. | |
groups[].rows[].team | object | additionalProperties: false; Obrigatório | ||
groups[].rows[].team.name | string | maxLength: 60; Obrigatório | ||
groups[].rows[].team.short | string | maxLength: 8 | O código curto do time, com o qual o favorito do cartão é comparado. Sem um, o cartão usa três letras do nome. | |
groups[].rows[].played | integer | mínimo: 0; máximo: 999 | Jogos disputados; a soma dos resultados quando omitido. | |
groups[].rows[].won | integer | mínimo: 0; máximo: 999 | ||
groups[].rows[].wonOt | integer | mínimo: 0; máximo: 999 | Vitórias na prorrogação ou em disputa de pênaltis, contadas com won na coluna W. | |
groups[].rows[].drawn | integer | mínimo: 0; máximo: 999 | Empates (a coluna T do futebol americano). | |
groups[].rows[].lost | integer | mínimo: 0; máximo: 999 | ||
groups[].rows[].otl | integer | mínimo: 0; máximo: 999 | Derrotas na prorrogação ou em disputa de pênaltis. | |
groups[].rows[].diff | integer | mínimo: -9999; máximo: 9999 | Saldo de gols ou de pontos. | |
groups[].rows[].points | number | mínimo: -999; máximo: 9999 | Pontos; uma dedução pode deixar um time abaixo de 0. | |
groups[].rows[].pct | number | mínimo: 0; máximo: 1 | A proporção de jogos vencidos, de 0 a 1, exibida como .732. A coluna dela aparece quando nenhuma linha tem pontos. | |
groups[].rows[].form | string ou array | anyOf: [{"type":"string","maxLength":20},{"type":"array","maxItems":20,"items":{"enum":["W","D","L"]}}] | Os últimos resultados, do mais antigo ao mais recente, cinco exibidos: uma string como WWDLW (as outras letras são ignoradas) ou uma lista de W, D e L. | |
groups[].rows[].zone | string | "champion", "qualify", "playoff", "relegation" | Colore a barra da linha: champion, qualify, playoff ou relegation. | |
updatedAt | string | "" | maxLength: 40 | Quando a tabela foi buscada, ISO 8601 (apenas armazenamento de dados; um feed carrega fetchedAt). |
Exemplo de tela
Salve as propriedades estáticas como params.json e crie o cartão. O resultado traz o id crd_ dele.
{
"theme": "neomustard"
}
screenrig card create --type standings --major 1 --file params.json
Adicione este item aos primitives de uma página da playlist, com esse id no lugar do id do exemplo. Publique a playlist e atribua uma tela.
{
"id": "standings",
"primitive": "card",
"card": "crd_01EXAMPLECARD000000000",
"layout": "full",
"content_fit": "fill"
}
Escrever dados ao vivo
Escreva o documento no cartão depois de criá-lo e depois substitua-o para atualizar a tela sem republicar. O cartão verifica cada gravação contra suas propriedades dinâmicas e recusa um documento que ele rejeita. Use o mesmo projeto da playlist.
Salve o documento como card-data.json. O CLI lê o documento em si, sem invólucro:
{
"league": null,
"season": "",
"zones": [],
"groups": [],
"updatedAt": ""
}
screenrig card data put crd_01EXAMPLECARD000000000 --file card-data.json
Ou chame a API diretamente. A API envolve o mesmo documento em um campo document. Um token de agente já nomeia seu projeto, então nenhum cabeçalho de projeto é enviado; se você enviar ScreenRig-Project, ele deve corresponder ao projeto do token. Forneça sua autorização de API pelo ambiente; veja Autenticação da API.
curl --request PUT "https://api.screenrig.ai/api/cards/crd_01EXAMPLECARD000000000/data" \
--header "Authorization: Bearer $SCREENRIG_TOKEN" \
--header "Content-Type: application/json" \
--data '{"document":{"league":null,"season":"","zones":[],"groups":[],"updatedAt":""}}'