# Опции на конструктора

> Всяка опция, приемана от new Entase(), с нейната стойност по подразбиране и ефект. Всички опции са незадължителни и повечето могат да бъдат заменени за всяка отделна резервация.

Всяка опция е незадължителна. Стойностите по-долу са тези по подразбиране, които клиентът прилага, когато не зададете някоя от тях.

```js
const entase = new Entase({
  pk: null,
  locale: 'auto',
  checkoutMode: 'auto',
  collectConsent: true,
  backdrop: true,
  backdropColor: '#000000',
  tprm: {},
  pane:  { width: 800, height: '100%' },
  popup: { width: 800, height: 1000 }
});
```

## Опции

| Име | Тип | По подразбиране | Описание |
|---|---|---|---|
| `pk` | string | `null` | Вашият публичен ключ. Клиентът го изпраща, когато проверява дали домейнът ви има право да използва вградено плащане. Без него всяко плащане се отваря като изскачащ прозорец. |
| `locale` | string | `'auto'` | Език на плащането. `'auto'` прочита атрибута `lang` на вашия елемент `<html>`. |
| `checkoutMode` | string | `'auto'` | `'auto'`, `'pane'` или `'popup'`. Вижте [Режими на плащане](/developers/js-client/checkout-modes.md). Неразпозната стойност използва `'auto'`. |
| `collectConsent` | boolean | `true` | Дали плащането иска от посетителя да приеме известието за условията. След като бъде приет, отговорът се запомня в бисквитка и стъпката се пропуска. |
| `backdrop` | boolean | `true` | Дали да се затъмни страницата зад плащането. `false` също така деактивира блокирането на превъртането на страницата. |
| `backdropColor` | string | `'#000000'` | Цвят на затъмнената област като CSS стойност за цвят. |
| `tprm` | object | `{}` | Параметри за проследяване, добавяни към URL адреса на плащането като параметри на заявката. Вижте [Проследяване и съгласие](/developers/js-client/tracking-and-consent.md). |
| `pane` | object | `{ width: 800, height: '100%' }` | Размер на вградения панел. Игнорира се в режим на изскачащ прозорец. |
| `popup` | object | `{ width: 800, height: 1000 }` | Размер на прозореца за изскачане в пиксели. Игнорира се в режим на панел. |

## Оразмеряване на панела и изскачащия прозорец

`pane.width` приема число (пиксели) или всякаква CSS дължина – `'720px'`, `'50%'`, `'40vw'` или израз `calc()`. Обикновено число се приема за пиксели.

Панелът е ограничен до тази ширина на настолни устройства и заема цялата ширина на мобилни устройства, където вместо това се прилага `pane.height`. Превключването между двете се извършва, когато прозорецът за преглед е по-тесен от конфигурираната ширина; когато ширината е зададена като относителна единица, превключването се извършва при 800px.

`popup.width` и `popup.height` приемат само числа в пиксели, а прозорецът се центрира на екрана на посетителя. Ако екранът не е достатъчно висок за заявената височина, прозорецът се намалява, за да се побере.

## Фон

Фонът зад изскачащ прозорец се затъмнява повече, отколкото зад панел, защото изскачащият прозорец изисква страницата под него да изглежда неактивна. Задайте `backdrop: false`, за да премахнете затъмняването изцяло – това също така оставя страницата с възможност за превъртане зад плащането.

`backdropColor` се прилага без промяна, така че може да бъде всеки валиден CSS цвят. Използвайте го, за да съответства на тъмен или брандиран сайт, а не за да скриете фона; за това правилната опция е `backdrop: false`.

## Замени за отделна резервация

`checkoutMode`, `collectConsent`, `backdrop`, `backdropColor`, `pane` и `popup` могат да бъдат заменени за една резервация, като ги подадете на `book()`. Стойността на ниво инстанция остава непроменена за следващите извиквания:

```js
const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY' });

// This one booking opens wider, with no dimming.
entase.book('EVENT_ID', {
  pane: { width: '60vw' },
  backdrop: false
});
```

`pk` и `tprm` не са опции за отделна резервация – `pk` идентифицира акаунта за цялата страница, а параметрите за проследяване се променят чрез `setTracking()`, когато трябва да са различни.
