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

# Migracja z konfiguratora

> Co się dzieje ze sklepem zbudowanym w konfiguratorze bloków i jak przejść na stronę jako kod.

Do tej pory stronę sklepu składało się z bloków w edytorze wizualnym. W ItemShop 3.0 stronę tworzy się jako [projekt z kodem](https://andcze.mintlify.site/pl/site/overview.md), a konfigurator bloków jest wycofywany.

## Czy muszę coś robić teraz?

Nie. Sklepy z konfiguratora **działają bez zmian** — ten sam adres, te same produkty, ta sama kasa — dopóki nie opublikujesz na produkcji pierwszej strony z kodu. Do tego czasu hosting odpowiada dla Twojego sklepu `421` („to nie ta strona”) i ruch obsługuje dotychczasowy storefront. Produkty, płatności, serwery, zamówienia i rabaty nie są objęte migracją, bo nie zmieniają się wcale — strona z kodu pobiera je ze [Storefront API](https://andcze.mintlify.site/pl/developers/storefront-api.md).

## Co się przenosi

Migrację robisz na szablonie (domyślnie **Bento**, a dla sklepów nie-minecraftowych Storefront). Wygląd z konfiguratora przechodzi do pliku `src/site.config.ts`:

| Z konfiguratora | Do strony (`site.config.ts`) |
| - | - |
| Kolor marki, akcent | `colors.brand` (+ `brandHover`), `colors.accent` — sprawdź kontrast |
| Motyw jasny/ciemny, przełącznik | `theme.default`, `theme.toggle` |
| Logo (obraz lub tekst), nazwa | `logo.image` / `logo.text`, `name` |
| Linki w menu | `nav[]` (specjalne `terms` i `privacy` wskazują dokumenty prawne sklepu) |
| Linki w stopce, social media | `footer.links` (`external: true` dla Discorda itp.) |
| Hero: tytuł, tekst, przycisk, obraz | `hero.*` (w tekście działa `**pogrubienie**`) |
| Widoczność ostatnich zakupów, topki, celu | `recentPurchases.show`, `topSpenders.show`, `goal.show` |
| Adres serwera w nagłówku | `serverAddress` |
| Link do Discorda | atrapy w szablonie zamieniane na Twój Discord (albo ukrywane) |
| Języki | `languages` (puste = wszystkie włączone w panelu) |
| E-mail i kody rabatowe w kasie | `checkout.requireEmail`, `checkout.discountCodes` |
| Tłumaczenia treści | wartości `Localized` w configu; tłumaczenia produktów zostają przy produktach |

Co **nie** ma 1:1 odpowiednika:

* `theme.variant` z konfiguratora to układ, nie kolor — odpowiada mu wybór szablonu i tła hero,
* styl i przyklejenie paska nawigacji (`navStyle`, `navSticky`) — obsługuje je CSS nagłówka w szablonie,
* niestandardowe bloki (tekst, obraz, HTML) — odtwarzasz jako komponenty albo tekst hero; HTML bez skryptów inline,
* teksty regulaminu i zgód — dokumenty prawne serwuje platforma, nie kopiuje się ich do strony.

Przełączniki prywatności danych publicznych (ostatni kupujący, topka, cel miesiąca, gracze online) działają po stronie serwera dalej, niezależnie od strony.

## Jak przebiega migracja

Migrację uruchamiasz w panelu: baner „Przejdź na nowy sklep” (pulpit i edytor bloków) prowadzi do kreatora z trzema krokami.

**1. Wybierz szablon**

Kreator pokazuje szablony (domyślnie **Bento**, oznaczony jako polecany) i przycisk **Pokaż, co przeniesiemy**: listę przenoszonych ustawień, listę rzeczy „do przeniesienia ręcznie” i wygenerowany plik `src/site.config.ts`. Nic nie jest jeszcze zapisane. Klik **Utwórz nowy sklep** tworzy projekt z szablonu, dopisuje rewizję „Migracja z edytora bloków” i buduje podgląd.

**2. Sprawdź podgląd**

Kupujący **nadal widzą stary sklep**. Otwórz podgląd w nowej karcie — to dokładnie ta strona, którą zobaczą po publikacji. Możesz wybrać inny szablon i utworzyć stronę ponownie. Rzeczy spoza listy przeniesionych poprosisz o dodanie [AI edytor](https://andcze.mintlify.site/pl/site/ai-editor.md) lub [własnego agenta](https://andcze.mintlify.site/pl/site/agents.md) (skill `itemshop-migrate-legacy`).

**3. Opublikuj nowy sklep**

**Opublikuj nowy sklep** przełącza adres sklepu i Twoją domenę na nową stronę. Publikację zatwierdza właściciel lub zespół w panelu — z CLI, MCP czy agenta AI przechodzi przez [zasady publikacji](https://andcze.mintlify.site/pl/site/workspace.md#zasady-publikacji) i bez zgody kończy się `403 WORKSPACE_PRODUCTION_REQUIRES_APPROVAL`.

> [!WARNING]
>
> Zanim opublikujesz, sprawdź w podglądzie cały proces zakupu (nick, zgody, wybór płatności). Po publikacji gracze trafiają już na nową stronę.

## Powrót do starego sklepu

Stare ustawienia sklepu (konfigurator) **nigdy nie są zmieniane** podczas migracji, więc powrót to tylko przełączenie trybu: strona wraca do trybu „stary sklep”, a projekt i jego rewizje zostają. Po powrocie hosting dla Twojego sklepu odpowiada `421` i ruch obsługuje dotychczasowy storefront.

## Dla integracji

Kreator korzysta z endpointów `/shops/{shopId}/site/migrate`:

| Metoda | Ścieżka | Zakres | Działanie |
| - | - | - | - |
| `GET` | `/site/migrate` | `site:read` | Stan: `legacy`, `migrating` albo `published`, razem z buildem i podglądem. |
| `GET` | `/site/migrate/preview?templateId=` | `site:read` | Wygenerowany `site.config.ts` oraz listy `applied` i `skipped` (bez zapisu). |
| `POST` | `/site/migrate` | `site:write` | Tworzy stronę z szablonu, rewizję migracji i build z podglądem. |
| `POST` | `/site/migrate/publish` | `site:write` | Publikuje na produkcję (polityka publikacji). |
| `POST` | `/site/migrate/rollback` | `site:write` | Wraca do starego sklepu. |

Hurtowo (dla operatorów własnej instalacji) służy skrypt `npm run migrate:legacy` z opcją `--dry-run`.

## Co znika

* konfigurator bloków i jego panel ustawień strony,
* ustawienia wyglądu kasy z konfiguratora (układ kasy definiuje teraz kod strony),
* stary asystent AI do bloków — zastępuje go [AI edytor](https://andcze.mintlify.site/pl/site/ai-editor.md).

> **[Strona jako kod](https://andcze.mintlify.site/pl/site/overview.md)**
>
> Jak działa nowy model.

> **[Szablony](https://andcze.mintlify.site/pl/site/templates.md)**
>
> Bento i pozostałe szablony.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.