> ## 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.

# Blok Shipping protection

> Blok Shipping protection w Aftersell Cart: opcjonalny dodatek ochrony przesyłki, który zapisuje wybór na zamówieniu.

> Blok **Shipping protection** oferuje opcjonalny dodatek ochrony przesyłki, który kupujący mogą włączyć w koszyku, pozwalając im dodać ochronę przed uszkodzeniem, zgubieniem lub kradzieżą podczas wysyłki oraz zapisując ten wybór na zamówieniu dla Twoich narzędzi realizacji lub obsługi roszczeń.

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

* Dodanie ochrony robi dwie rzeczy: dodaje **prawdziwą pozycję produktu Shopify** dla produktu ochrony i ustawia atrybut koszyka `_shipping_protected` na `true`.
* **Ten atrybut przetrwa checkout i ląduje na zamówieniu** jako atrybut notatki zamówienia (`_shipping_protected`), więc Twoje narzędzia realizacji lub roszczeń mogą rozpoznać, które zamówienia są chronione.
* Kupujący mogą zarówno dodać, jak i usunąć ochronę za pomocą kontrolki, niezależnie od wybranego typu wyświetlania.
* **Jeśli nie istnieje użyteczny wariant ochrony, blok nie renderuje niczego**, zamiast pokazywać kontrolkę, która przy kliknięciu skończyłaby się błędem.

<div id="settings">
  ## Ustawienia
</div>

| Ustawienie       | Co kontroluje                                                                                                                       | Domyślnie                                                         |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| **Title**        | Nagłówek rich-text. Obsługuje `{{product_title}}` i `{{price}}`.                                                                    | `<strong>{{product_title}}</strong>`                              |
| **Price label**  | Linia ceny, wyświetlana pod tytułem. Obsługuje `{{product_title}}` i `{{price}}`. Wyczyść to pole, aby całkowicie ukryć linię ceny. | `{{price}}`                                                       |
| **Description**  | Tekst pomocniczy.                                                                                                                   | `Protect your order from damage, loss, or theft during shipping.` |
| **Price**        | Cena ochrony (liczbowa, ustala pobieraną kwotę).                                                                                    | `2.5`                                                             |
| **Product**      | Produkt ochrony (dostarczany przez aplikację).                                                                                      | —                                                                 |
| **Display type** | Jak wygląda kontrolka: **Toggle** lub **Checkbox**.                                                                                 | Toggle                                                            |

<div id="placement-and-limits">
  ## Umieszczenie i limity
</div>

* **Region:** body lub bottom.
* **Maksimum:** 1 na stan koszyka.
* **Stan:** tylko wypełniony koszyk.
* Niedodawany domyślnie. Niezablokowany — możesz go usunąć lub ukryć.

<div id="custom-template">
  ## Szablon niestandardowy
</div>

Obsługuje [szablon niestandardowy](/pl/aftersell/cart/custom-templates) z zakładki Code, który zastępuje wbudowane znaczniki tego bloku Twoim JSX. Oto propsy, które otrzymuje.

| Prop              | Typ                                  | Do czego służy                                                                              |
| ----------------- | ------------------------------------ | ------------------------------------------------------------------------------------------- |
| `isEnabled`       | `boolean`                            | Czy ochrona przesyłki jest obecnie w koszyku.                                               |
| `isPending`       | `boolean`                            | `true`, gdy dodawanie lub usuwanie jest w toku. Wyłącz na tym swoją kontrolkę.              |
| `title`           | `string`                             | Tytuł w czystym tekście. Rezerwa, gdy nie ma tytułu rich-text.                              |
| `titleHtml`       | `string`                             | Zsanityzowany HTML tytułu rich-text. Pusty, gdy go nie ma.                                  |
| `descriptionHtml` | `string`                             | Zsanityzowany HTML opisu rich-text. Pusty, gdy go nie ma.                                   |
| `priceHtml`       | `string \| null`                     | Zsanityzowany HTML ceny rich-text z dedykowanego pola ceny. `null`, gdy to pole jest puste. |
| `priceLabel`      | `string`                             | Sformatowana etykieta ceny. Pusta, gdy cena nie jest pokazywana.                            |
| `imageUrl`        | `string`                             | Obraz ochrony. Pusty, gdy go nie ma.                                                        |
| `ctaText`         | `string`                             | Etykieta przycisku, dla formatu `button`.                                                   |
| `format`          | `'button' \| 'checkbox' \| 'toggle'` | Jak kupujący się zapisuje. Rozgałęziaj swoje znaczniki na tej podstawie.                    |
| `handleAdd`       | `() => void`                         | Dodaje ochronę do koszyka. Dla formatu `button`.                                            |
| `handleToggle`    | `() => void`                         | Włącza i wyłącza ochronę w koszyku. Dla `checkbox` i `toggle`.                              |
| `isLoading`       | `boolean`                            | `true`, gdy koszyk nadal wykonuje pierwsze pobranie.                                        |

<Warning>
  `format` decyduje, który handler ma zastosowanie: `handleAdd` dla `button`, `handleToggle` dla `checkbox` i `toggle`. Podpięcie niewłaściwego pozostawia kontrolkę bezczynną u sprzedawców, którzy wybrali drugi format.
</Warning>

<div id="design">
  ## Wygląd
</div>

Stylizuj ten blok w jego sekcji **Design** w panelu ustawień. To nadpisania per blok, które nakładają się na Twój globalny wygląd i wracają do niego, gdy są puste.

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

Sekcja **Text** w Design pozwala kontrolować typografię trzech elementów. Użyj selektora **Text element**, aby przełączać się między nimi.

**Title** — nagłówek ochrony. Obsługuje także niestandardową rodzinę czcionek. Pogrubienie i kolor tekstu ustawia się w edytorze Rich Text powyżej (w zakładce Settings), a nie tutaj.

| Ustawienie         | Co kontroluje            | Domyślnie           |
| ------------------ | ------------------------ | ------------------- |
| **Font**           | Rodzina czcionek tytułu. | Dziedziczy z motywu |
| **Size**           | Rozmiar czcionki.        | `15px`              |
| **Line height**    | Mnożnik wysokości linii. | `1.33`              |
| **Letter spacing** | Odstępy między znakami.  | Normal              |

**Price** — linia ceny. Pogrubienie i kolor tekstu ustawia się w edytorze Rich Text powyżej.

| Ustawienie         | Co kontroluje            | Domyślnie |
| ------------------ | ------------------------ | --------- |
| **Size**           | Rozmiar czcionki.        | `15px`    |
| **Line height**    | Mnożnik wysokości linii. | `1.33`    |
| **Letter spacing** | Odstępy między znakami.  | Normal    |

**Description** — tekst pomocniczy. Pogrubienie i kolor tekstu ustawia się w edytorze Rich Text powyżej.

| Ustawienie         | Co kontroluje            | Domyślnie |
| ------------------ | ------------------------ | --------- |
| **Size**           | Rozmiar czcionki.        | `14px`    |
| **Line height**    | Mnożnik wysokości linii. | `1.29`    |
| **Letter spacing** | Odstępy między znakami.  | Normal    |

<Tip>
  Kliknięcie elementu tekstowego bezpośrednio w podglądzie koszyka podświetla go i automatycznie otwiera jego kontrolki w panelu.
</Tip>

Czym są ustawienia wyglądu? Dowiedz się więcej tutaj: [Ustawienia wyglądu](/pl/aftersell/cart/design-settings).
