⚠️ Ważna informacja
Funkcje edytora kodu
TypeScript IntelliSense
props. Podpowiedzi typów propsów to IntelliSense wyłącznie w edytorze, pomagające pisać szablony — nie są czymś, co wpisujesz do szablonu, i nigdy nie działają w Twoim sklepie.
Edytowalna treść szablonu
Sekcja General
Nagłówek
Dostępne propsy — pełny szablon

cartQuantity
-
Typ:
string - Opis: Aktualna liczba produktów w koszyku sformatowana jako string
- Zastosowanie: Wyświetlanie liczby produktów w koszyku w Twoim niestandardowym nagłówku
closeHandler
-
Typ:
() => void - Opis: Funkcja zwrotna zamykająca koszyk po wywołaniu
- Zastosowanie: Podepnij do przycisków, ikon lub innych elementów interaktywnych, aby zamykać koszyk
titleComponent
-
Typ:
React.ReactElement | null - Opis: Wstępnie wyrenderowany komponent tytułu nagłówka koszyka, zawierający właściwe style i tłumaczenia
- Zastosowanie: Wyświetlanie tytułu koszyka zgodnie z konfiguracją ustawień koszyka
Sekcja Body
Ogłoszenia
Dostępne propsy — pełny szablon

announcementTemplate
-
Typ:
string - Opis: Zawartość HTML komunikatu ogłoszenia
- Zastosowanie: Wyświetlanie komunikatu ogłoszenia w niestandardowych implementacjach
timer
-
Typ:
string - Opis: Aktualna wartość licznika sformatowana jako string
- Zastosowanie: Wyświetlanie licznika odliczającego w niestandardowych implementacjach ogłoszeń
shouldUseTimer
-
Typ:
boolean - Opis: Wskazuje, czy funkcja licznika jest włączona dla tego ogłoszenia
- Zastosowanie: Warunkowe renderowanie treści i elementów sterujących związanych z licznikiem
isTimerExpiredAndShouldHide
-
Typ:
boolean - Opis: Wskazuje, czy licznik wygasł i ogłoszenie powinno zostać ukryte
- Zastosowanie: Sterowanie widocznością całego ogłoszenia na podstawie stanu licznika
Nagrody progowe
Dostępne propsy — pełny szablon

rewardsMessageHtml
-
Typ:
string - Opis: Zawartość HTML komunikatu o nagrodach
- Zastosowanie: Wyświetlanie komunikatu o nagrodach z bogatym formatowaniem w niestandardowych implementacjach
milestonesCompleted
-
Typ:
number - Opis: Liczba ukończonych kamieni milowych
- Zastosowanie: Wyświetlanie liczby ukończeń lub obliczanie procentu ukończenia
milestonesData
-
Typ:
- Opis: Kompletna konfiguracja kamieni milowych i dane postępu dla systemu nagród
- Zastosowanie: Dostęp do informacji o kamieniach milowych, procentu postępu i ustawień wyświetlania
-
Właściwości:
milestonesToRender: Tablica obiektów kamieni milowych ze statusem ukończenia i pozycjonowaniemprogressPercent: Aktualny postęp jako procent (0-100)showMilestones: Czy wyświetlać znaczniki kamieni milowychsettings: Konfiguracja wizualna wyświetlania kamieni milowych
Rabaty
TRIGGERED_REWARDS, dla zachowania wstecznej zgodności z istniejącym kodem niestandardowych szablonów.
Dostępne propsy — pełny szablon
rules
-
Typ:
- Opis: Tablica aktualnie włączonych reguł rabatowych
- Zastosowanie: Wyświetlanie dostępnych nagród, ich tytułów, opisów oraz informacji, czy warunki każdej reguły zostały spełnione
-
Właściwości:
id: Unikalny identyfikator reguły nagrodytitle: Tytuł reguły rabatowejdescription: Opis reguły nagrodyconditionsMet: Czy warunki reguły są aktualnie spełnione przez koszyk. Użyj tego do budowania wzorców UX typu „odblokowano X” vs „wydaj jeszcze $Y, aby odblokować X”
showSection
-
Typ:
boolean - Opis: Wskazuje, czy sekcja Discounts powinna być wyświetlana
- Zastosowanie: Sterowanie widocznością całego modułu Discounts
onToggleSection
-
Typ:
() => void - Opis: Funkcja zwrotna przełączająca stan widoczności sekcji Discounts
- Zastosowanie: Podepnij do przycisków lub elementów interaktywnych, aby pozwolić użytkownikom pokazywać/ukrywać sekcję nagród
Rekomendacje
Dostępne propsy — szablon kafelka rekomendacji

Produkty w koszyku
Wyświetlanie wskaźnika ładowania podczas dodawania do koszyka lub aktualizacji koszyka: Standardowy moduł Cart Items nie udostępnia wbudowanego spinnera „dodawanie do koszyka”. Jeśli chcesz wyświetlać stan ładowania podczas dodawania produktu lub trwania operacji na koszyku, użyj szablonu Product tile i odczytaj propsy
isLoading oraz loadingOperation (udokumentowane poniżej), aby warunkowo renderować spinner lub nakładkę. Niestandardowe szablony wymagają doświadczenia deweloperskiego — zobacz informację na górze tej strony.Dostępne propsy — szablon Product tile
Jeśli chcesz używać niestandardowego kodu w którymkolwiek z tych szablonów, musisz wyłączyć szablon Product Tile.

title
-
Typ:
string - Opis: Tytuł/nazwa produktu
- Zastosowanie: Wyświetlanie głównej nazwy produktu w pozycjach koszyka
variant
-
Typ:
React.ReactNode - Opis: Wstępnie wyrenderowany komponent informacji o wariancie
- Zastosowanie: Wyświetlanie szczegółów wariantu jako komponentu React
properties
-
Typ:
React.ReactNode - Opis: Wstępnie wyrenderowany komponent właściwości produktu
- Zastosowanie: Wyświetlanie właściwości produktu i informacji o subskrypcji jako komponentu React
bundle
-
Typ:
React.ReactNode - Opis: Wstępnie wyrenderowany komponent szczegółów zestawu
- Zastosowanie: Wyświetlanie informacji o zestawie jako komponentu React
compareAtPrice
-
Typ:
string | undefined - Opis: Sformatowana cena porównawcza (cena pierwotna)
- Zastosowanie: Wyświetlanie pierwotnej ceny dla produktów w promocji
price
-
Typ:
string - Opis: Sformatowana aktualna cena
- Zastosowanie: Wyświetlanie aktualnej ceny pozycji
savings
-
Typ:
string | undefined - Opis: Sformatowana kwota oszczędności
- Zastosowanie: Wyświetlanie, ile klient oszczędza
imageUrl
-
Typ:
string | undefined - Opis: Adres URL zdjęcia produktu
- Zastosowanie: Wyświetlanie zdjęcia produktu
productUrl
-
Typ:
string | undefined - Opis: Adres URL strony produktu
- Zastosowanie: Link do strony szczegółów produktu
quantity
-
Typ:
number - Opis: Aktualna ilość pozycji w koszyku
- Zastosowanie: Wyświetlanie ilości i zarządzanie nią
showQuantitySelector
-
Typ:
boolean - Opis: Czy wyświetlać elementy sterujące ilością
- Zastosowanie: Warunkowe wyświetlanie wyboru ilości
discountCodes
-
Typ:
string[] | undefined - Opis: Tablica zastosowanych kodów rabatowych dla tej pozycji
- Zastosowanie: Wyświetlanie rabatów dla konkretnej pozycji
subscription
-
Typ:
- Opis: Kompletny obiekt zarządzania subskrypcją z danymi ulepszenia, planami sprzedaży i funkcjami obsługi
- Zastosowanie: Zarządzanie funkcjonalnością subskrypcji
-
Obiekt subscription zawiera:
-
subscriptionUpgradeData: Informacje o ulepszeniu (null, jeśli ulepszenie nie jest dostępne)
buttonText: Tekst przycisku ulepszeniadefaultSellingPlanId: ID domyślnego planu sprzedaży dla ulepszeń
-
sellingPlansData: Dostępne opcje planów sprzedaży (null, jeśli brak planów)
sellingPlanGroups: Tablica grup planów z ich planami sprzedażyactiveSellingPlanId: ID aktualnie wybranego planu sprzedażyoneTimePurchaseText: Tekst opcji zakupu jednorazowego (null, jeśli niedostępna)
- upgradeSellingPlan: Funkcja przejścia na konkretny plan sprzedaży
- changeSellingPlan: Funkcja zmiany aktualnego planu sprzedaży
- getSellingPlanGroupText: Funkcja pomocnicza do formatowania wyświetlanego tekstu planu sprzedaży
-
subscriptionUpgradeData: Informacje o ulepszeniu (null, jeśli ulepszenie nie jest dostępne)
onIncrease
-
Typ:
() => void - Opis: Funkcja zwiększająca ilość pozycji
- Zastosowanie: Obsługa akcji zwiększania ilości
onDecrease
-
Typ:
() => void - Opis: Funkcja zmniejszająca ilość pozycji
- Zastosowanie: Obsługa akcji zmniejszania ilości
onDeleteProduct
-
Typ:
() => void - Opis: Funkcja usuwająca pozycję z koszyka
- Zastosowanie: Obsługa usuwania pozycji
onQuantityChange
-
Typ:
(quantity: string) => void - Opis: Funkcja obsługująca bezpośrednie wprowadzanie ilości
- Zastosowanie: Obsługa ręcznych zmian ilości
handleInputChange
-
Typ:
(e: React.ChangeEvent<HTMLInputElement>) => void - Opis: Funkcja obsługi zmian w polu ilości
- Zastosowanie: Obsługa zmian w polu wprowadzania ilości
replaceItemWithVariant
-
Typ:
(variantId: string) => Promise<{ success: boolean }> - Opis: Funkcja zastępująca pozycję innym wariantem
- Zastosowanie: Obsługa przełączania wariantów
isLoading
-
Typ:
boolean - Opis: Stan ładowania dla operacji na koszyku
- Zastosowanie: Wyświetlanie wskaźników ładowania
loadingOperation
-
Typ:
'increase' | 'decrease' | 'inputChange' | 'remove' | 'subscription' | undefined - Opis: Konkretna operacja, która aktualnie się ładuje
- Zastosowanie: Wyświetlanie stanów ładowania właściwych dla danej operacji
setLoadingOperation
-
Typ:
(op: "increase" | "decrease" | "inputChange" | "remove" | "subscription" | undefined) => void - Opis: Funkcja ustawiająca stan operacji ładowania
- Zastosowanie: Zarządzanie stanami ładowania dla różnych operacji
rawItem
-
Typ:
CartItem(zobaczCartItemtyp poniżej) - Opis: Surowe dane pozycji koszyka zawierające wszystkie informacje
Dostępne propsy — szablon Variant

item
-
Typ:
CartItem(zobaczCartItemtyp poniżej) - Opis: Surowe dane pozycji koszyka zawierające informacje o wariancie
- Zastosowanie: Dostęp do szczegółów wariantu z pozycji koszyka
Dostępne propsy — szablon Properties

productProperties
-
Typ:
{ key: string; value: string; isUrl?: boolean; }[] - Opis: Tablica właściwości produktu (pola niestandardowe, właściwości pozycji)
subscriptionLabel
-
Typ:
string | undefined - Opis: Etykieta informacji o subskrypcji
Dostępne propsy — szablon Bundle

getSizedImageUrl
-
Typ:
getSizedImageUrl: ({ src, width, height }: SizedImageParams) => string - Opis: Funkcja pomocnicza do pobierania adresów URL obrazów o właściwym rozmiarze
item
-
Typ:
-
Opis: Informacje o pozycji zestawu wraz ze składnikami.
itemComponentsto tablica obiektów składników — iteruj po niej (map), aby wyrenderować każdy składnik zestawu.
showDetailsText
-
Typ:
string | undefined - Opis: Tekst akcji „pokaż szczegóły”
- Zastosowanie: Wyświetlanie tekstu przycisku rozwijania
hideDetailsText
-
Typ:
string | undefined - Opis: Tekst akcji „ukryj szczegóły”
isExpanded
-
Typ:
boolean - Opis: Czy szczegóły zestawu są rozwinięte
toggleCollapsible
-
Typ:
() => void - Opis: Funkcja przełączająca widoczność szczegółów zestawu
- Zastosowanie: Obsługa akcji rozwijania/zwijania
chevronDownIconComponent
-
Typ:
React.ReactElement - Opis: Wstępnie wyrenderowana ikona strzałki (chevron) do rozwijania/zwijania
- Zastosowanie: Wyświetlanie spójnego wskaźnika rozwijania/zwijania
Dostępne propsy — szablon Price

compareAtPrice
-
Typ:
string | undefined - Opis: Sformatowana cena porównawcza (cena pierwotna)
- Zastosowanie: Wyświetlanie pierwotnej ceny dla produktów w promocji
price
-
Typ:
string - Opis: Sformatowana aktualna cena
- Zastosowanie: Wyświetlanie aktualnej ceny pozycji
savings
-
Typ:
string | undefined - Opis: Sformatowana kwota oszczędności
- Zastosowanie: Wyświetlanie, ile klient oszczędza
Właściwości obiektu CartItem
CartItem zawiera wszystkie szczegółowe informacje o pozycji koszyka. Ten obiekt jest dostępny jako props.rawItem w szablonie Product Tile oraz props.item w szablonie Variant.
Podstawowa identyfikacja
-
key (string)- Unikalny identyfikator tej pozycji koszyka. -
id (number)- ID wariantu (pole starszego typu, użyj zamiast niego variant_id) -
variant_id (number)- ID wariantu Shopify dla tej pozycji -
product_id (number)- ID produktu Shopify -
lineIdxFrom1 (number)- Indeks tej pozycji (liczony od 1) w oryginalnym koszyku przed modyfikacjami
Informacje o produkcie
-
title (string)- Tytuł pozycji (zazwyczaj tytuł wariantu) -
product_title (string)- Główny tytuł produktu -
handle (string)- Uchwyt adresu URL produktu (np. „camp-stool”) -
vendor (string)- Nazwa dostawcy/marki produktu -
product_type (string)- Kategoria/typ produktu do celów podatkowych -
sku (string)- Identyfikator SKU (Stock Keeping Unit) -
product_description (string)- Pełny opis produktu -
product_has_only_default_variant (boolean)- Czy produkt ma tylko jeden wariant
Ceny (wszystkie ceny w centach)
-
quantity (number)- Liczba sztuk tej pozycji w koszyku -
price (number)- Cena jednostkowa przed rabatami -
original_price (number)- To samo co price -
discounted_price (number)- Cena jednostkowa po rabatach na poziomie produktu -
compare_at_price (number | null)- Cena porównawcza (MSRP). Uwaga: To pole jest dodawane przez Upcart, a nie dostarczane przez API koszyka Shopify -
final_line_price (number)- Łączna cena po rabatach na poziomie produktu (ilość × discounted_price) -
original_line_price (number)- Łączna cena przed rabatami (ilość × price) -
line_price (number)- Łączna cena po wszystkich rabatach -
final_price (number)- Przestarzałe - Cena jednostkowa po rabatach produktowych (nie uwzględnia ilości) -
total_discount (number)- To samo co line_level_total_discount -
line_level_total_discount (number)- Łączna kwota rabatu zastosowanego do tej pozycji
Media i adresy URL
-
image (string)- Adres URL głównego zdjęcia produktu -
url (string)- Względna ścieżka URL do strony produktu (np. „/products/camp-stool?variant=42789611372803”) -
featured_image (object | null)- Szczegóły wyróżnionego zdjęcia:alt (string)- Tekst alternatywny zdjęciaaspect_ratio (number)- Proporcje zdjęciaheight (number)- Wysokość zdjęcia w pikselachurl (string)- Adres URL zdjęciawidth (number)- Szerokość zdjęcia w pikselach
Warianty i opcje
-
variant_title (string | null)- Tytuł wariantu (np. „Large / Red”) -
variant_options (string[])- Tablica wartości opcji wariantu -
options_with_values (Array)- Szczegółowe informacje o opcjach:name (string)- Nazwa opcji (np. „Size”)value (string)- Wartość opcji (np. „Large”)
-
untranslated_product_title (string | undefined)- Oryginalny tytuł produktu przed tłumaczeniem (tylko w odpowiedziach mutacji koszyka) -
untranslated_variant_title (string | undefined)- Oryginalny tytuł wariantu przed tłumaczeniem (tylko w odpowiedziach mutacji koszyka)
Właściwości niestandardowe i metadane
-
properties (Record<string, any> | null)- Niestandardowe właściwości pozycji lubnull, gdy pozycja ich nie ma — sprawdź przed odczytem klucza. Właściwości, których klucze zaczynają się od__, są zawsze ukryte przed klientami; klucze zaczynające się od pojedynczego_również są ukryte, gdy włączone jest ustawienie koszyka Hide properties starting with single underscore ”_”. -
gift_card (boolean)- Czy ta pozycja jest kartą podarunkową -
taxable (boolean)- Czy ta pozycja podlega opodatkowaniu -
requires_shipping (boolean)- Czy ta pozycja wymaga wysyłki -
grams (number)- Waga pozycji w gramach
Rabaty i promocje
-
discounts (Array)- Uproszczone informacje o rabatach:amount (number)- Kwota rabatu w centachtitle (string)- Tytuł/nazwa rabatu
-
line_level_discount_allocations (Array)- Szczegółowe informacje o alokacji rabatów:-
amount (number)- Kwota rabatu w centach -
discount_application (object)- Pełne szczegóły zastosowania rabatu:allocation_method (string)- Sposób alokacji rabatucreated_at (string)- Kiedy rabat został utworzonydescription (string | null)- Opis rabatukey (string)- Identyfikator klucza rabatutarget_selection (string)- Co jest celem rabatutarget_type (string)- Typ celutitle (string)- Tytuł rabatutotal_allocated_amount (number)- Łączna alokowana kwotatype ('discount_code' | '')- Typ rabatu (pusty string dla rabatów automatycznych)value (string)- Wartość rabatuvalue_type (string)- Sposób stosowania wartości
-
Produkty w zestawach
-
has_components (boolean | undefined)- Czy ta pozycja jest zestawem zawierającym inne produkty (tylko w odpowiedziach GET koszyka) -
item_components (Array | null | undefined)- Szczegóły składników zestawu:-
quantity (number)- Ilość tego składnika -
image (object)- Zdjęcie składnika:url (string)- Adres URL zdjęciaheight (number | null)- Wysokość zdjęciawidth (number | null)- Szerokość zdjęciaalt (string)- Tekst alternatywny
-
-
product (object)- Informacje o produkcie składnika:title (string)- Tytuł produktuhas_only_default_variant (boolean)- Czy produkt ma tylko domyślny wariant
-
variantTitle (string)- Tytuł wariantu składnika
Reguły biznesowe
-
quantity_rule (object | undefined)- Ograniczenia ilości (tylko w odpowiedziach GET koszyka):min (number)- Minimalna dozwolona ilośćmax (number | null)- Maksymalna dozwolona ilość (null = brak limitu)increment (number)- Krok zmiany ilości
Informacje o subskrypcji
-
selling_plan_allocation (object | undefined)- Szczegóły subskrypcji/planu sprzedaży:-
price (number)- Cena subskrypcji w centach -
compare_at_price (number | null)- Cena porównawcza subskrypcji -
per_delivery_price (number)- Cena za dostawę -
selling_plan (object)- Szczegóły planu sprzedaży:-
id (number)- ID planu sprzedaży -
name (string)- Nazwa planu -
description (string)- Opis planu -
options (Array)- Opcje planu:name (string)- Nazwa opcjiposition (number)- Pozycja opcjivalue (string)- Wartość opcji
-
recurring_deliveries (boolean)- Czy plan ma cykliczne dostawy
-
-
Metadane integracji
-
__appIntegrated (object | undefined)- Dane integracji z aplikacją firmy trzeciej:app ('stay.ai')- Identyfikator zintegrowanej aplikacjibundleRole ('parent' | 'child')- Rola w strukturze zestawu
Upselle
Dostępne propsy — szablon kafelka upsell

itemUrl
-
Typ:
string - Opis: Adres URL strony produktu
- Zastosowanie: Tworzenie linków do strony szczegółów produktu dla lepszej nawigacji użytkownika
imageUrl
-
Typ:
string | undefined - Opis: Adres URL zdjęcia produktu
- Zastosowanie: Wyświetlanie zdjęć produktów w niestandardowych implementacjach upselli
- Rozwiązanie awaryjne: Obsłuż wartości undefined w bezpieczny sposób, używając obrazów zastępczych
description
-
Typ:
string - Opis: Opis produktu
- Zastosowanie: Wyświetlanie opisu produktu w niestandardowych implementacjach upselli
altText
-
Typ:
string - Opis: Tekst alternatywny zdjęcia produktu dla dostępności
- Zastosowanie: Wsparcie czytników ekranu i poprawa zgodności z wymogami dostępności
productId
-
Typ:
string - Opis: Unikalny identyfikator produktu
- Zastosowanie: Śledzenie produktów, implementacja analityki lub użycie w funkcji dodawania do koszyka
productTitle
-
Typ:
string - Opis: Tytuł/nazwa produktu
- Zastosowanie: Wyświetlanie nazwy produktu w niestandardowych implementacjach upselli
oldPrice & newPrice
-
Typ:
string | null(oldPrice),string(newPrice) - Opis: Sformatowana cena porównawcza i cena aktualna
- Zastosowanie: Wyświetlanie informacji cenowych ze wskaźnikami promocji
isSingleVariant
-
Typ:
boolean - Opis: Wskazuje, czy produkt ma tylko jeden wariant
- Zastosowanie: Warunkowe renderowanie elementów interfejsu wyboru wariantu
productOptions
-
Typ:
{ name: string; position: 1 | 2 | 3; values: string[]; }[] - Opis: Kompletna konfiguracja opcji produktu wraz ze wszystkimi dostępnymi wyborami
- Zastosowanie: Dostęp do szczegółowych informacji o opcjach produktu dla zaawansowanego interfejsu wyboru wariantów
variantOptions
-
Typ:
{ label: string; value: string }[] - Opis: Dostępne opcje wariantów produktu
- Zastosowanie: Tworzenie list rozwijanych lub przycisków wyboru wariantu
- Struktura: Każda opcja zawiera wyświetlaną etykietę i unikalny identyfikator wartości
selectedVariantId & selectedVariantLabel
- Typ: string (selectedVariantId), string | undefined (selectedVariantLabel)
- Opis: ID aktualnie wybranego wariantu i jego wyświetlana etykieta
- Zastosowanie: Śledzenie i wyświetlanie informacji o wybranym wariancie
onVariantChange
-
Typ:
(variantId: string) => void - Opis: Funkcja obsługująca zmiany wyboru wariantu
- Zastosowanie: Aktualizacja wybranego wariantu, gdy użytkownik dokona wyboru
onAddClick
-
Typ:
(productId: string, variantId?: string) => void - Opis: Funkcja obsługująca dodanie produktu do koszyka
- Zastosowanie: Implementacja funkcji dodawania do koszyka z właściwą identyfikacją produktu i wariantu
rating & reviewCount
-
Typ:
number | undefined(rating),string | undefined(reviewCount) - Opis: Ocena produktu i sformatowany tekst liczby opinii
- Zastosowanie: Wyświetlanie dowodu społecznego i wskaźników jakości produktu
addLoading & addButtonText
-
Typ:
boolean(addLoading),string(addButtonText) - Opis: Stan ładowania akcji dodawania do koszyka i tekst przycisku
- Zastosowanie: Przekazywanie użytkownikowi informacji zwrotnej podczas operacji na koszyku i dostosowanie tekstu przycisku
cartItemsCount
-
Typ:
number - Opis: Aktualna liczba produktów w koszyku
- Zastosowanie: Wyświetlanie stanu koszyka lub implementacja logiki opartej na koszyku
Dodatkowe notatki
Dostępne propsy — pełny szablon

cartNote
-
Typ:
string - Opis: Aktualna treść notatki do koszyka wprowadzona przez klienta
- Zastosowanie: Wyświetlanie tekstu notatki do koszyka i zarządzanie nim w niestandardowych implementacjach
notesPlaceholder
-
Typ:
string - Opis: Tekst zastępczy pola wprowadzania notatek
- Zastosowanie: Podpowiedź dla klientów, co powinni zawrzeć w notatce
notesTitle
-
Typ:
string - Opis: Tytuł/nagłówek sekcji notatek
- Zastosowanie: Wyświetlanie tytułu sekcji w niestandardowych implementacjach notatek
chevronDownIconComponent
-
Typ:
React.ReactElement - Opis: Wstępnie wyrenderowany komponent ikony strzałki (chevron) do funkcji rozwijania/zwijania
- Zastosowanie: Wyświetlanie spójnych wskaźników rozwijania/zwijania w niestandardowych implementacjach
loadingIndicatorComponent
-
Typ:
React.ReactElement | null - Opis: Wstępnie wyrenderowany komponent wskaźnika ładowania dla operacji asynchronicznych
- Zastosowanie: Wyświetlanie stanów ładowania podczas zapisywania notatki
handleCartNoteChange
-
Typ:
(newCartNote: string) => void - Opis: Funkcja obsługująca zmiany treści notatki do koszyka
- Zastosowanie: Aktualizacja notatki do koszyka, gdy użytkownik modyfikuje tekst
isExpanded
-
Typ:
boolean - Opis: Wskazuje, czy sekcja notatek jest aktualnie rozwinięta
- Zastosowanie: Sterowanie widocznością obszaru wprowadzania notatek
toggleCollapsible
-
Typ:
() => void - Opis: Funkcja przełączająca stan rozwinięcia/zwinięcia sekcji notatek
- Zastosowanie: Podepnij do przycisków lub elementów interaktywnych, aby sterować widocznością sekcji
Dodatki
Dostępne propsy — pełny szablon

addonProduct
-
Typ:
- Opis: Kompletne informacje o produkcie-dodatku, w tym szczegóły produktu, ceny wariantu i dane zdjęcia
- Zastosowanie: Dostęp do wszystkich informacji o produkcie potrzebnych do wyświetlania produktów-dodatków
-
Struktura: Zawiera zagnieżdżone obiekty product, variant i image z kompleksowymi danymi produktu
-
Właściwości obiektu Product
addonProduct.product- id: Unikalny numeryczny identyfikator produktu
- title: Wyświetlana nazwa produktu-dodatku
- description: Opis produktu w formacie HTML
-
Właściwości obiektu Variant
- id: Unikalny numeryczny identyfikator wariantu
- price: Aktualna cena w centach
- compare_at_price: Cena pierwotna w centach (null, jeśli brak ceny porównawczej)
-
Właściwości obiektu Image
- src: Adres URL zdjęcia produktu
- alt: Tekst alternatywny zdjęcia (dla dostępności)
-
Właściwości obiektu Product
toggle
-
Typ:
- Opis: Stan przełącznika i funkcje obsługi włączania/wyłączania dodatku
- Zastosowanie: Implementacja interaktywnego przełącznika wyboru dodatku
- Stany: Trzy możliwe stany — enabled, disabled i loading
- Funkcje obsługi: Osobne funkcje dla akcji włączania i wyłączania
moneyFormat
-
Typ:
string - Opis: Ciąg formatu waluty używany do formatowania cen
- Zastosowanie: Przekaż do funkcji formatMoney dla spójnego wyświetlania waluty
formatMoney
-
Typ:
- Opis: Funkcja pomocnicza do formatowania wartości walutowych
- Zastosowanie: Spójne formatowanie cen zgodnie z ustawieniami waluty sklepu
- Parametry: Przyjmuje wartość w centach, opcjonalny ciąg formatu oraz opcję usuwania HTML
Kody rabatowe
Dostępne propsy — pełny szablon

indicator
-
Typ:
'validating' | 'invalid' | 'none' - Opis: Aktualny stan walidacji pola kodu rabatowego
- Zastosowanie: Wyświetlanie odpowiedniej informacji zwrotnej w interfejsie na podstawie stanu walidacji
-
Stany:
validating: Kod jest przetwarzany/walidowanyinvalid: Walidacja kodu nie powiodła sięnone: Brak stanu walidacji (domyślny/bezczynny)
discountCodeInput
-
Typ:
string - Opis: Aktualna wartość pola wprowadzania kodu rabatowego
- Zastosowanie: Wyświetlanie tekstu kodu rabatowego wprowadzonego przez użytkownika i zarządzanie nim
discountCodePlaceholder
-
Typ:
string - Opis: Tekst zastępczy pola wprowadzania kodu rabatowego
- Zastosowanie: Podpowiedź dla użytkowników, co wpisać w pole
discountCodeButtonText
-
Typ:
string - Opis: Tekst wyświetlany na przycisku zastosowania/wysłania
- Zastosowanie: Dostosowanie tekstu przycisku wysyłania kodu rabatowego
setDiscountCodeInput
-
Typ:
(value: string | ((prev: string) => string)) => void - Opis: Funkcja aktualizująca wartość pola kodu rabatowego
- Zastosowanie: Obsługa zmian wprowadzanych przez użytkownika w polu kodu rabatowego
handleSubmit
-
Typ:
(e: React.FormEvent<HTMLFormElement>) => void - Opis: Funkcja obsługująca wysłanie formularza w celu zastosowania kodu rabatowego
- Zastosowanie: Przetwarzanie walidacji i stosowania kodu rabatowego
- Zdarzenie: Obsługuje zdarzenia wysłania formularza
Podsumowanie koszyka
Dostępne propsy — pełny szablon

totalSavingsText
-
Typ:
string - Opis: Etykieta tekstowa sekcji łącznych oszczędności
- Zastosowanie: Wyświetlanie etykiety oszczędności w niestandardowych implementacjach podsumowania koszyka
discountApplications
-
Typ:
- Opis: Tablica zastosowanych kodów rabatowych i rabatów automatycznych
- Zastosowanie: Wyświetlanie wszystkich aktywnych rabatów z ich tytułami i typami
- Struktura: Każdy rabat zawiera unikalny klucz, wyświetlany tytuł i identyfikator typu
cartTotalDiscount
-
Typ:
number - Opis: Łączna kwota rabatu w centach
- Zastosowanie: Dostęp do surowej wartości rabatu do obliczeń lub niestandardowego formatowania
showCartTotalDiscount
-
Typ:
boolean -
Opis: Wskazuje, czy łączny rabat powinien być wyświetlany. Oznaczony jako przestarzały na rzecz
showTotalSavings, ale zobacz uwagę poniżej — wewnątrz niestandardowego szablonu to nadal ten props, którym dysponujesz. - Zastosowanie: Warunkowe renderowanie informacji o rabacie w zależności od ustawień
formattedCartTotalDiscount
-
Typ:
string -
Opis: Wstępnie sformatowany ciąg HTML łącznej kwoty rabatu. Oznaczony jako przestarzały na rzecz
formattedTotalSavings, ale zobacz uwagę poniżej. - Zastosowanie: Wyświetlanie poprawnie sformatowanej kwoty rabatu z symbolami waluty
isRemovingDiscount
-
Typ:
boolean - Opis: Wskazuje, czy trwa operacja usuwania rabatu
- Zastosowanie: Wyświetlanie stanów ładowania podczas usuwania rabatu
handleRemoveDiscount
-
Typ:
() => Promise<void> - Opis: Funkcja obsługująca usuwanie kodu rabatowego
- Zastosowanie: Usuwanie zastosowanych kodów rabatowych z koszyka
totalCompareAtPrice
-
Typ:
number - Opis: Suma cen porównawczych (wszystkich produktów w koszyku)
- Zastosowanie: Obliczanie i wyświetlanie oszczędności lub informacji o pierwotnych cenach
totalAfterAllDiscounts
-
Typ:
number - Opis: Ostateczna suma koszyka w centach po zastosowaniu wszystkich rabatów
- Zastosowanie: Wyświetlanie ostatecznej ceny, którą zapłacą klienci
originalTotalPrice
-
Typ:
number - Opis: Pierwotna suma koszyka w centach przed jakimikolwiek rabatami
- Zastosowanie: Pokazywanie pierwotnych cen dla przejrzystości i obliczania oszczędności
cartItemCount
-
Typ:
number - Opis: Łączna liczba produktów w koszyku
- Zastosowanie: Wyświetlanie informacji o liczbie produktów w podsumowaniach koszyka
Odznaki zaufania
Dostępne propsy — pełny szablon
showBadge
-
Typ:
boolean - Opis: Wskazuje, czy odznaka zaufania powinna być wyświetlana
- Zastosowanie: Sterowanie widocznością odznak zaufania w zależności od ustawień modułu
badgeUrl
-
Typ:
string - Opis: Adres URL obrazu odznaki zaufania do wyświetlenia
- Zastosowanie: Źródłowy adres URL obrazu odznaki zaufania w niestandardowych implementacjach