> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aftersell.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Bloco Shipping protection

> O bloco Shipping protection do Aftersell Cart: um complemento de proteção opcional que registra a escolha no pedido.

> O bloco **Shipping protection** oferece um complemento opcional de proteção de envio que os compradores podem ativar no carrinho, permitindo adicionar proteção contra dano, perda ou roubo durante o envio e registrando essa escolha no pedido para suas ferramentas de fulfillment ou de sinistros.

<div id="behavior">
  ## Comportamento
</div>

* Adicionar a proteção faz duas coisas: adiciona uma **linha real de produto Shopify** para o produto de proteção e define um atributo de carrinho `_shipping_protected` como `true`.
* **Esse atributo sobrevive ao checkout e chega ao pedido** como um atributo de nota do pedido (`_shipping_protected`), então suas ferramentas de fulfillment ou de sinistros podem identificar quais pedidos estão protegidos.
* Os compradores podem tanto adicionar quanto remover a proteção com o controle, qualquer que seja o tipo de exibição escolhido.
* **Se não existir nenhuma variante de proteção utilizável, o bloco não renderiza nada** em vez de mostrar um controle que geraria erro ao clicar.

<div id="settings">
  ## Configurações
</div>

| Configuração     | O que controla                                                                                                                                      | Padrão                                                            |
| ---------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| **Title**        | Título em rich text. Suporta `{{product_title}}` e `{{price}}`.                                                                                     | `<strong>{{product_title}}</strong>`                              |
| **Price label**  | A linha de preço, exibida abaixo do título. Suporta `{{product_title}}` e `{{price}}`. Limpe este campo para ocultar a linha de preço por completo. | `{{price}}`                                                       |
| **Description**  | Texto de apoio.                                                                                                                                     | `Protect your order from damage, loss, or theft during shipping.` |
| **Price**        | O preço da proteção (numérico, define o valor cobrado).                                                                                             | `2.5`                                                             |
| **Product**      | O produto de proteção (provisionado pelo app).                                                                                                      | —                                                                 |
| **Display type** | Como o controle aparece: **Toggle** ou **Checkbox**.                                                                                                | Toggle                                                            |

<div id="placement-and-limits">
  ## Posicionamento e limites
</div>

* **Região:** corpo ou parte inferior.
* **Máximo:** 1 por estado do carrinho.
* **Estado:** apenas carrinho com itens.
* Não adicionado por padrão. Não bloqueado — você pode removê-lo ou ocultá-lo.

<div id="custom-template">
  ## Template personalizado
</div>

Suporta um [template personalizado](/pt/aftersell/cart/custom-templates) na sua aba Code, que substitui o markup nativo deste bloco pelo seu JSX. Estas são as props que ele recebe.

| Prop              | Tipo                                 | Para que serve                                                                                               |
| ----------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------ |
| `isEnabled`       | `boolean`                            | Se a proteção de envio está atualmente no carrinho.                                                          |
| `isPending`       | `boolean`                            | `true` enquanto a adição ou remoção está em andamento. Desative seu controle com base nisso.                 |
| `title`           | `string`                             | Título em texto simples. O fallback quando não há título em rich text.                                       |
| `titleHtml`       | `string`                             | HTML sanitizado do título em rich text. Vazio quando não há.                                                 |
| `descriptionHtml` | `string`                             | HTML sanitizado da descrição em rich text. Vazio quando não há.                                              |
| `priceHtml`       | `string \| null`                     | HTML sanitizado do preço em rich text vindo do campo de preço dedicado. `null` quando esse campo está vazio. |
| `priceLabel`      | `string`                             | Rótulo de preço formatado. Vazio quando o preço não é exibido.                                               |
| `imageUrl`        | `string`                             | Imagem da proteção. Vazio quando não há.                                                                     |
| `ctaText`         | `string`                             | Rótulo do botão, para o formato `button`.                                                                    |
| `format`          | `'button' \| 'checkbox' \| 'toggle'` | Como o comprador ativa. Ramifique seu markup com base nisso.                                                 |
| `handleAdd`       | `() => void`                         | Adiciona a proteção ao carrinho. Para o formato `button`.                                                    |
| `handleToggle`    | `() => void`                         | Alterna a proteção dentro e fora do carrinho. Para `checkbox` e `toggle`.                                    |
| `isLoading`       | `boolean`                            | `true` enquanto o carrinho ainda está fazendo sua primeira busca.                                            |

<Warning>
  `format` decide qual handler se aplica: `handleAdd` para `button`, `handleToggle` para `checkbox` e `toggle`. Conectar o errado deixa o controle inerte para lojistas que escolheram o outro formato.
</Warning>

<div id="design">
  ## Design
</div>

Estilize este bloco com sua seção **Design** no painel de configurações. Essas são sobreposições por bloco que se aplicam por cima do seu design global e recorrem a ele quando estão em branco.

<div id="text">
  ### Text
</div>

A seção **Text** em Design permite controlar a tipografia de três elementos. Use o seletor **Text element** para alternar entre eles.

**Title** — o cabeçalho da proteção. Também suporta uma família de fonte personalizada. Negrito e cor do texto são definidos no Rich Text Editor acima (na aba Settings), não aqui.

| Configuração       | O que controla                    | Padrão        |
| ------------------ | --------------------------------- | ------------- |
| **Font**           | Família da fonte para o título.   | Herda do tema |
| **Size**           | Tamanho da fonte.                 | `15px`        |
| **Line height**    | Multiplicador de altura da linha. | `1.33`        |
| **Letter spacing** | Espaçamento entre caracteres.     | Normal        |

**Price** — a linha de preço. Negrito e cor do texto são definidos no Rich Text Editor acima.

| Configuração       | O que controla                    | Padrão |
| ------------------ | --------------------------------- | ------ |
| **Size**           | Tamanho da fonte.                 | `15px` |
| **Line height**    | Multiplicador de altura da linha. | `1.33` |
| **Letter spacing** | Espaçamento entre caracteres.     | Normal |

**Description** — o texto de apoio. Negrito e cor do texto são definidos no Rich Text Editor acima.

| Configuração       | O que controla                    | Padrão |
| ------------------ | --------------------------------- | ------ |
| **Size**           | Tamanho da fonte.                 | `14px` |
| **Line height**    | Multiplicador de altura da linha. | `1.29` |
| **Letter spacing** | Espaçamento entre caracteres.     | Normal |

<Tip>
  Clicar em um elemento de texto diretamente na pré-visualização do carrinho o destaca e abre seus controles no painel automaticamente.
</Tip>

O que são configurações de design? Saiba mais aqui: [Configurações de design](/pt/aftersell/cart/design-settings).
