Pular para o conteúdo principal

9 publicações com a etiqueta "layout"

Ver todas as etiquetas

Changelog — 03/05/2026

CASSINO_MODE — front_custom removido (breaking change)

  • @cactus-agents/games 2.0.0 — CASSINO_MODE=front_custom deixou de existir. Antes desta data havia 3 modes (legacy, api_new, front_custom); agora são apenas 2 (legacy, api_new). O front_custom era usado só pelo sandbox interno stage1 — stage1 migrou pra legacy e nenhuma brand de cliente consumia o mode. Em vez de manter código morto como surface area pública, o package removeu de vez.
  • Exports públicos removidos: createCustomCategoriesGamesFromClient, createCustomCategoriesGamesService, CustomCategoriesGamesOptions, CustomCategoryDef, CustomCategoriesConfig, CustomCategorySource, filterExplicitCategory, resolveCategoryGames, customCategoryDefToRaw. Tipo LegacyHomeRowConfig.type deixou de aceitar "custom-category".
  • Sobrevive intacto: HomeRow.type runtime ainda inclui "custom-category" / "custom-section" — esses são emitidos pelo BFF page pipeline em legacy e api_new e continuam funcionando. Curadoria por overlay (categories.personalize.ts) também continua válida nos dois modes.
  • Refactor interno: src/custom-categories.ts virou src/stats-ordering.ts; orderByStats, CustomCategoryOrderBy, DisplayPriority, StatDisplayKey continuam exportados do root do package (API pública preservada).
  • Documentação atualizada em conjunto: docs-internal/template/env-vars.md, docs-internal/template/games.md, docs-internal/forking/override-files.md, docs-external/customization/games.md e docs-external/deployment/environment.md reescritos para descrever apenas os 2 modes restantes. CASSINO_FRONT_CUSTOM_BASE removido das tabelas de env vars; regra de "paridade obrigatória" pra .new.ts/.custom.ts foi droppada (não existem mais). Guia de personalização aponta agora pra categories.personalize.ts em vez de categories.custom.ts.

Changelog - 02/05/2026

Dia pesado: 30 PRs no front-web-base + 4 PRs no front-cactus-core. Destaques: revamp completo da gamificação 7k (cards de missão/torneio + modal), portabilidade massiva da personalização da vera-bet-br (paridade visual com legado), fluxo FTD completo da Vera (oferta, cashback, autoDeposit, check-in), polimentos visuais da cassino-bet-br e correções de Proteção de Conta.

Gamificação — Revamp 7k

  • Cards de missão e torneio completamente revisados nas variantes classic e stacked para 7k-bet-br/fi-7k-bet/ng-7k-bet, com novos visuais, badges de status e progresso refinado.
  • Modal de detalhe da missão (MissionDetailModal) ganhou layout novo com seção de prêmios, regras de elegibilidade e CTA de inscrição/reivindicação.
  • Tela de torneio (tournaments.$id.tsx) reescrita: novo TournamentHero, RegistrationCTA com estados expandidos, TournamentStatsCarousel e tournament-internals consolidados.
  • LevelsSection ajustada e página vip/levels.tsx reorganizada para refletir a hierarquia de níveis VIP do 7k.
  • Smartico Initializer atualizado para integrar com o novo fluxo de claim e pending_claim exposto pelo SDK.
  • Configs de brand (gamification.ts, widgets/mission-card.ts, widgets/tournament-card.ts) propagadas nos três overrides 7k para refletir o novo visual.

Changelog - 26/04/2026

Bottom Notification Widget (refator pra padrão topbar)

  • Substituição do InstallAppFloatingWidget por BottomNotification config-driven (app/components/layout/BottomNotification.tsx). O widget flutuante deixa de ser específico só pra "instalar app" e vira uma fila de tipos configuráveis, espelhando a arquitetura do topbar (types, store, handlers, definitions queue). O componente legado (InstallAppFloatingWidget.tsx, ~200 linhas) foi removido.
  • Seis tipos de notificação suportados: download_app, push_notify, rewards_available, referral, telegram e tournament. Cada brand define quais ficam habilitados e em qual ordem de prioridade — o primeiro que passa no shouldShow renderiza, igual à lógica do topbar.
  • Separação dados × runtime: app/config/bottom-notifications.config.ts carrega só dados puros (lista de enabled, rotationDelaySeconds, params por tipo) e é overrideable por brand. A lógica runtime (ícones Lucide, ctaHref/onCta, predicados shouldShow, estratégia de storage) fica em app/layouts/bottom-notification/handlers.ts — não overrideable, espelha 1:1 o buildTopbarDefinitions.
  • rotationDelaySeconds configurável: com 0 (default) o swap pro próximo widget elegível é instantâneo após dismiss, igual ao topbar. Valores maiores dão um "respiro" antes do próximo slide-up.
  • Revalidação reativa em auth/rewards: quando o usuário loga, desloga ou ganha um reward, a fila reavalia automaticamente (paridade com o topbar) — sem precisar navegar pra atualizar o estado do widget.

Changelog - 20/03/2026

Estatísticas de Jogos (GameStats)

  • Novo endpoint /api/games/statistics-dl para buscar estatísticas de jogos em tempo real — substituindo dados mockados
  • Componente GameStats refatorado para usar a nova estrutura de estatísticas com suporte a períodos (24h, 7d, 15d, 30d)
  • Ícones atualizados no GameStats — substituição de SVGs customizados por Lucide icons para mais consistência visual
  • House edge adicionado como campo nas estatísticas por período (campo houseEdge em StatsPeriod)
  • Cache do servidor atualizado em GamesCacheService para suportar o novo endpoint de estatísticas
  • Dependências atualizadas: @cactus-agents/games v0.7.0 e v0.8.0, @cactus-agents/mocks v1.1.1

Changelog - 19/03/2026

Layout e Responsividade

  • Corrigido o viewport meta tag para melhorar a usabilidade em mobile, prevenindo zoom indesejado com os atributos maximum-scale e user-scalable
  • Atualizado o layout principal para usar altura dinâmica (h-dvh), melhorando a adaptação em diferentes dispositivos
  • Ajustado o overflow do body para hidden com overscroll-behavior: none, garantindo melhor controle de scroll na aplicação

Changelog - 18/03/2026

Área do Usuário (front-web-base)

  • Substituição completa do menu lateral por navegação em abas (tabs): geral, histórico e configurações
  • Adicionadas páginas de conteúdo tabuladas: general.tsx (info da conta, segurança, métodos de pagamento), config.tsx (proteção, jogo responsável) e history.tsx (histórico de transações e de login)
  • Removidas páginas legadas separadas: conta, segurança, proteção da conta, IRPF, histórico de login
  • Seções de conta e segurança refatoradas com painéis colapsáveis e ícones
  • Sections Pix, Clabe, Senha e Autenticação em dois fatores agora são componentes auto-contidos com gerenciamento de estado próprio
  • Adicionado componente UserSummaryHeader com info do usuário e ações rápidas

Changelog - 16/03/2026

Jogos

  • Modal fullscreen para o player de jogos no mobile: ao clicar em Jogar, o jogo abre em tela cheia com header próprio (botão voltar e botão Depositar)
  • Detecção de dispositivo móvel no GameIframe para ajustar comportamento de exibição
  • Carrossel de jogos relacionados atualizado com setas de navegação e link "Ver todos"
  • Carrossel de provedores adicionado na página de detalhe do jogo
  • Grid de jogos ajustado para 3 colunas com espaçamento mais compacto
  • Deduplicação de jogos no cache para evitar itens repetidos nas linhas
  • Chaves de componentes migradas de game.id para game.slug para maior consistência
  • Ajuste no fallback de estatísticas: API pode retornar objeto com valores zerados, agora verificado corretamente antes de cair no mock

Changelog - 14/03/2026

PWA e Configuração de App

  • Migração do worker de deploy de JavaScript para TypeScript, tornando o código mais robusto e consistente com o restante do projeto
  • Adicionados suporte a manifest.json e meta tags para PWA, permitindo que o app seja instalado em dispositivos móveis como aplicativo nativo
  • Implementado middleware de SSR com cache no worker principal, melhorando performance de carregamento
  • Adicionado arquivo offline.html e service worker (sw.js) para suporte básico a modo offline

Changelog - 07/03/2026

Pagamentos

  • Implementado módulo completo de depósito e saque com integração a provedores de pagamento: novos componentes de modal (DepositModal, WithdrawModal), seletores de método, inputs de valor, atalhos de quantia e telas de resultado para PIX, SPEI e redirect
  • Criado hook usePayments para interação com a API de pagamentos no client-side
  • Adicionadas rotas de servidor para operações de pagamento: provedores, depósito, status de depósito, saque, lista de bancos e chave PIX
  • Criada store Zustand (payments.ts) para gerenciamento de estado dos modais de pagamento
  • Botões de depósito e saque ativados no menu de conta do usuário e na área de header (removidas badges "Em breve")
  • Adicionado SDK @cactus-agents/payments ao monorepo core com suporte a: listagem de provedores por moeda, submissão e polling de depósito, saque, gerenciamento de chaves PIX (Brasil) e lista de bancos SPEI (México)
  • Publicado pacote @cactus-agents/payments ^0.2.0 no registro; dependência adicionada ao front-web-base

Casino / Jogos

  • Adicionado módulo games/casino com cache, rotas e componentes para suporte ao casino legado
  • Integrado serviço de jogos legado (createLegacyGamesFromClient) ao SDK @cactus-agents/games (versão 0.3.0)
  • Corrigida ordem da entrada "Megaways" na configuração de home rows legado para exibição correta
  • Migrada dependência @cactus-agents/games de referência local para pacote publicado no registro

Wallet

  • Corrigido tratamento de erros na API de rollover: falhas em getRollover() e checkRolloverAccomplished() não impedem mais o retorno dos dados principais da carteira
  • Adicionado campo balance ao tipo RealWallet, com conversão de centavos para reais na transformação da resposta da API
  • Publicados @cactus-agents/wallet ^0.2.2 (inclui correção do rollover) e atualizada dependência no front-web-base

Auth

  • Melhorados os fluxos de login e registro com suporte a manipulação de cookies no lado do servidor

API / Infra

  • Corrigido createClient para encaminhar automaticamente o header Cookie em todas as requisições server-side, eliminando a necessidade de extração manual por rota

Layout

  • Padronizadas classes de padding e margem (p-4 lg:p-6) em rotas de jogos, debug e área do usuário para layout responsivo consistente
  • Ajustada largura padrão do conteúdo e alinhamentos visuais gerais

Acessibilidade

  • Modal agora fecha ao pressionar Enter ou Space na overlay; adicionado role="button" para conformidade com acessibilidade
  • Componente Pagination refatorado para tratamento de elipse com maior segurança de tipos

Deploy / CI

  • Pipeline de deploy expandida com suporte ao ambiente demo, além de produção e staging