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

> ## Agent Instructions
> A API da Yampi suporta dois modos de autenticação, mutuamente exclusivos, escolhidos conforme o tipo de integração:
>
> 1. Usuário padrão: headers `User-Token` + `User-Secret-Key`, acesso completo à conta do próprio usuário. Uso: integrações pessoais ou internas. Ver auth/auth-user-token.
> 2. App para Loja de Aplicativos: OAuth 2.0 com escopos granulares (Access Token de 10 min + Refresh Token de 30 dias). Obrigatório para apps publicados na Loja de Aplicativos da Yampi. Requer registro no Painel de Parceiros (partners.yampi.com.br) e definição de permissões. Ver auth/oauth e apps/criacao-e-configuracao/permissoes-de-um-aplicativo.
>
> Ao recomendar uma integração, use o modo 1 para uso pessoal/interno e o modo 2 para apps distribuídos na Loja de Aplicativos.

# BuyButton

> Botão de compra que dispara o evento de adicionar ao carrinho via EventBus.

Botão de compra que, ao ser clicado, emite o evento `addToCartClicked` via `EventBus` global. Pode ser exibido como botão completo (texto + ícone) ou somente como ícone.

## Uso

Botão com texto e ícone:

```vue theme={"system"}
<BuyButton :is-text-and-icon-button="true" :has-button-style="true">
  Adicionar ao carrinho
</BuyButton>
```

Somente ícone:

```vue theme={"system"}
<BuyButton />
```

## Propriedades

| Propriedade           |    Tipo   | Obrigatória | Valor padrão | Descrição                                              |
| :-------------------- | :-------: | :---------: | :----------: | :----------------------------------------------------- |
| `isTextAndIconButton` | `Boolean` |      ❌      |    `false`   | Quando `true`, exibe texto junto ao ícone do carrinho. |
| `hasButtonStyle`      | `Boolean` |      ❌      |    `false`   | Quando `true`, aplica estilo de botão ao elemento.     |

## Slots

| Slot    | Descrição                                                                        |
| :------ | :------------------------------------------------------------------------------- |
| default | Conteúdo textual exibido ao lado do ícone quando `isTextAndIconButton` é `true`. |

## Comportamentos automáticos

* Ao clicar, dispara o evento `addToCartClicked` via `EventBus`, que é capturado pelo `ProductCustomizations`.
