O bloco Subscription upgrade é um sub-bloco que fica aninhado dentro de Cart items. Ele convida os compradores a trocar um item de linha elegível de compra única por uma assinatura direto do carrinho, transformando uma compra única em receita recorrente no momento da decisão, e permite que compradores que já assinaram mudem ou cancelem o plano naquela linha.
Comportamento
- Só aparece em linhas elegíveis. O bloco lê os selling plans do produto e não renderiza nada em uma linha cujo produto não tem planos de assinatura.
- Nunca oferecido em brindes de recompensa. Assinar um brinde concedido automaticamente removeria seu status de recompensa, então o convite é suprimido nessas linhas.
- Em uma linha de compra única, ele mostra a chamada para upgrade.
- Em uma linha já assinada, ele mostra um seletor de planos mais a opção de “voltar para compra única”.
Configurações
Posicionamento e limites
- Pai: aninha somente dentro de Cart items.
- Máximo: 1 por carrinho.
- Não adicionado por padrão. Não bloqueado, então você pode removê-lo ou ocultá-lo.
Template personalizado
view.state diz qual. view nunca é null dentro de um template personalizado: quando uma linha não tem planos, o bloco não renderiza nada e seu template não é chamado.
Cada entrada em
view.plans é { id: number, name: string, discountPercent: number }.
Use
onChange para um <select> e selectPlan para botões. onChange já trata o sentinela oneTimeValue; se você conectar seu próprio handler a um <select>, terá que comparar com oneTimeValue e chamar selectPlan(null) por conta própria.