---
title: Методы
description: Методы для управления календарем, включая инициализацию, обновление, установку параметров, удаление, показ и скрытие календаря.
section: 3
---

# Методы

## init()

Метод `init()` является основным методом экземпляра, который запускает процесс инициализации календаря.

```ts
const calendar = new Calendar(element, params);
calendar.init();
```

---

## update()

Метод `update()` позволяет применить к календарю новые настройки и выполнять сброс.
Этот метод принимает объект с необязательными аргументами для управления сбросом, по умолчанию сбрасывая выбранную пользователем дату, месяц и год после обновления.

Все aгрументы, по умолчанию `true`:

```ts
{
  year: boolean;
  month: boolean;
  dates: boolean | 'only-first';
  holidays: boolean;
  time: boolean;
}
```

- `true` - сбросится до параметров, указанных в настройках;
- `false` - не выполнит сброс, оставит параметры выбранные пользователем;
- `'only-first'` - сбрасывает все выбранные даты, оставляя самую раннюю. Если тип выбора даты указан как `'multiple-ranged'`, добавляется обработчик `'mousemove'` и `'keydown'` для наведения.

Пример использования:

```ts
calendar.locale = 'de-AT';
calendar.firstWeekday = 0;

calendar.update({
  dates: true,
});
```

---

## set()

Если вам нужно указать новые параметры или обработчики для календаря, который еще не инициализирован или уже инициализирован, вы можете использовать метод `.set()`.
Этот метод принимает объект с новыми параметрами и объект с необязательными аргументами для управления сбросом, по умолчанию сбрасывая выбранную пользователем дату, месяц и год после обновления.

Пример использования:

```ts
calendar.set({
  locale: 'de-AT',
  firstWeekday: 0,
}, {
  dates: true,
});
```

Этот метод может быть альтернативой указанию параметров при создании экземпляра календаря. Если вы вызываете этот метод перед инициализацией, не указывайте объект для управления сбросом.

```ts
const calendar = new Calendar(element);
calendar.set({ locale: 'de-AT', firstWeekday: 0 });
calendar.init();
```

---

## destroy()

Eсли вам нужно полностью удалить экземпляр календаря, вы можете использовать метод `destroy()`.

```ts
calendar.destroy();
```

---

## show()

Метод `show()` позволяет показать календарь, если он был скрыт.

```ts
calendar.show();
```

---

## hide()

Метод `hide()` позволяет скрыть календарь, если он был показан.

```ts
calendar.hide();
```
