defmodule SimpleshopThemeWeb.PageTemplates do
  @moduledoc """
  Shared page templates used by both the public shop and theme preview.

  These templates accept a `mode` parameter to control navigation behavior:
  - `:shop` - Links navigate normally (real shop pages)
  - `:preview` - Links send events to parent LiveView (theme editor)

  All templates expect these common assigns:
  - `theme_settings` - Current theme configuration
  - `logo_image` - Logo image struct or nil
  - `header_image` - Header image struct or nil
  - `mode` - `:shop` or `:preview`
  - `cart_items` - List of cart items (can be empty)
  - `cart_count` - Number of items in cart
  """
  use Phoenix.Component
  use SimpleshopThemeWeb.ShopComponents

  embed_templates "page_templates/*"
end
