Pular para o conteúdo principal

6 publicações com a etiqueta "payments"

Ver todas as etiquetas

Changelog - 06/05/2026

Pós-registro & Auth — fluxo regulatório e dedup de bursts

  • Novo hook useAfterRegisterFlow (app/hooks/useAfterRegisterFlow.ts) orquestra o pós-registro: abre o modal de depósito uma vez, logo após o cadastro, bypassando o throttle de 12h do useAutoDepositModal. Replica o handleOpenRegisterStrategy → openModal('deposit') do handleSuccessRegister legado em Vue. Suporta o ramo regulatório (espera o LimitsStep do ValidationBlockerOverlay resolver antes de abrir o depósito) e suprime quando há ?deposit=<campaign> na URL, conta restrita ou featuresConfig.autoDepositAfterRegister === false.
  • Store app/store/onboarding.ts (Zustand, não persistida) carrega o sinal justRegistered + lastPrudentialLimitActive entre o sucesso do RegisterModal e o próximo render do DefaultLayout. Reset automático no logout.
  • Forward de user_prudential_limit_active no payload de signup (/bff/register-simplified, /auth/register): sinaliza ao BFF qual botão regulatório o usuário clicou ("Quero definir meus limites agora" vs "Continuar sem limites"). Nova feature flag autoDepositAfterRegister propagada nos 13 overrides de brand.
  • Dedup cross-request de /auth/user-profile em app/services/auth.server.ts: cache token-scoped com TTL de 10s + cap de 100 entradas (chave = SHA-256 hex do token, evita expor token cru em dumps de memória). Resolve o burst pós-login onde POST /api/auth/login, useAuthProfileSync → GET /api/auth/profile e revalidator.revalidate() → _layout loader pegavam três Requests distintos com o mesmo token — o WeakMap<Request> antigo não conseguia deduplicar.
  • /api/auth/profile agora consome getAuthForRequest em vez de chamar createAuthFromClient direto, herdando automaticamente o cache acima. PRs touch-up em 20+ componentes (UserSummaryHeader, ValidationContextGate, GameIframe, payments, protection, validation steps) que liam useProfile() ad-hoc.

Changelog - 01/05/2026

FTD Onboarding — três fluxos novos consolidados (stage-ftd)

Maior entregável do dia. A branch stage-ftd aterrissou três fluxos completos de retenção/conversão D0, todos brand-configuráveis e cobertos por testes:

  • FTD Offer ("Oferta Relâmpago") — modal + floating widget + story thumb com Quick Deposit embutido. Componentes em app/components/ftd-offer/ (Provider, Modal, FloatingWidget, StoryThumb), storage isolado por marca em ftd-offer-storage.ts e analytics em ftd-offer-analytics.ts.
  • FTD Cashback — fluxo D0 com modal de oferta inicial (FtdCashbackFirstModal), modal de prêmio (FtdCashbackPrizeModal), Provider, dev panel, scaffolding de tiers (ftd-cashback-tiers.ts) e persistência local (ftd-cashback-storage.ts). Testes cobrem storage e cálculo de tiers.
  • FTD Check-in — daily check-in com mock fixture, logs diagnósticos, special offers, label "done today" e kill switch via feature flag remota da brand 7k (feat/ftd-checkin-7k-feature-flags). Componentes Checkin, CheckinTrigger, CheckinStoreOffers.
  • Loop de reabertura corrigidouseFtdCashbackFlow ganha guard pra não reabrir o first-modal logo depois do close (PR #485, fix/ftd-cashback-first-modal-loop).

Changelog - 27/03/2026

Autenticação (Login / Registro / Recuperação de senha)

  • Campo de documento (CPF) adicionado ao modal de registro com estilização nova e auto-validação ao preencher
  • Overlay de confirmação de saída no modal de registro ("tem certeza que quer sair?") — cobre o painel completo incluindo header
  • Logo responsivo da marca exibido nos modais de login, registro e recuperação de senha
  • Banner visual nos modais de login e recuperação de senha (imagem lateral)
  • Animação fade-in/fade-out no backdrop dos modais
  • Feature skipDocumentMask na recuperação de senha (para marcas que não usam máscara de documento)
  • Integração do Turnstile (captcha Cloudflare) nos fluxos de autenticação (login, registro, recuperação)

Changelog - 25/03/2026

Autenticação / Login / Registro

  • Modal de recuperação de senha implementado e integrado ao fluxo de login ("Esqueceu a senha?")
  • Tela de confirmação de saída no modal de registro — previne fechamento acidental
  • Reset dos campos de login/senha/erro ao fechar o modal de login
  • Termos pré-marcados configuráveis e links legais clicáveis no formulário de registro
  • Opção para esconder botão de fechar no RegisterModal durante estado de confirmação
  • Melhoria na interação do overlay — cursor-default e pointer-events-none no backdrop

Changelog - 13/03/2026

Validações (front-web-base + front-cactus-core)

  • Adicionado motor de validações no core SDK: stores Zustand, hooks e serviços para gerenciar fluxo de validação de jogadores por contexto (depósito, saque, casino, esportes)
  • Implementado ValidationBlockerOverlay: tela bloqueante com anti-tamper (MutationObserver + interval), bloqueio de ESC e carrossel de steps
  • Criado ValidationStepsModal: modal fechável para validações contextuais, com visual idêntico ao overlay porém com botão de fechar
  • Adicionados 10 componentes de step: Email, Telefone, Endereço, Documentos, Senha, Limites, KYC, Termos, GPS e Conta Bancária
  • Primitivos de UI criados: OTPInput, InputField, SelectField, PrimaryButton, ResendButton, SuccessState, StepCarousel
  • Todos os modais tematizados com tokens auth.* do theme.config.ts
  • Gates de validação conectados nos módulos existentes: GameIframe (antes de abrir jogo), DepositModal, WithdrawModal, Sports layout, e seções da conta do usuário (endereço, documentos, limites, autoexclusão, timeout)
  • 14 rotas de API criadas para todos os endpoints de validação
  • Utilitário buildValidationSnapshot adicionado
  • AuthInitializer conectado com sincronização de runtime
  • Pacote validations publicado no core com motor de regras, tipos TypeScript e testes unitários