1.0.2 • Published 3 years ago

@segor/simple-datepicker v1.0.2

Weekly downloads
-
License
MIT
Repository
-
Last release
3 years ago

Simple Datepicker

npm GitHub package.json version

Данная библиотека написана в качестве вспомогательного инструмента при создании комопнента выбора даты.

Установка

npm install @segor/simple-datepicker

или

yarn add @segor/simple-datepicer

Инициализация

import DatepickerCore from "@segor/simple-datepicker";

const datepicker = new DatepickerCore();

Методы

getMonthSlice

const slice = datepicker.getMonthSlice(month?: number, year?:number);

Возвращает Slice элемент представляющий собой массив всех дней месяца, разбитых по неделям. Последние месяца кеширует и сохраняет в свойство slices.

Например:

Результатом вызова

datepicker.getMonthSlice(6, 2021)

Будет

[
  [undefined, undefined, undefined, 1, 2, 3, 4],
  [5, 6, 7, 8, 9, 10, 11],
  [12, 13, 14, 15, 16, 17, 18],
  [19, 20, 21, 22, 23, 24, 25],
  [26, 27, 28, 29, 30, 31, undefined]
]

По данной структуре удобно проходить нативными методами массивов при создании календаря.


getMonthTails

const tails = datepicker.getMonthTails(month?:  number, year?:number);

Возвращает объект с двумя свойствами:

  • prev - последняя неделя предыдущего месяца.
  • next - первая неделя следующего месяца.

Например:

Результатом вызова

datepicker.getMonthTails(6, 2021);

Будет

{
	prev: [28, 29, 30, undefined, undefined, undefined, undefined],
	next: [undefined, undefined, undefined, undefined, undefined, undefined, 1]
}

setShownDate

datepicker.setShownDate(month?: number, year?: number);

Устанавливает значение свойства shownDate. По умолчанию аргументы являются текущей датой.


setSelectedDate

datepicker.setSelectedDate(month?: number, year?: number);

Устанавливает значение свойства selectedDate. По умолчанию аргументы являются текущей датой.


cleanSlices

datepicker.cleanSlices();

Очищает кэш с посчитаными месяцами.

Статические методы

getDaysInMonth

const daysInMonth: number = DatepickerCore.getDaysInMonth(month: number, year: number);

Или

const daysInMonth: number = DatepickerCore.getDaysInMonth(date: Date);

Возвращает количество дней в месяце.

Например:

DatepickerCore.getDaysInMonth(6, 2021) // returns 31

monthStartsWith

const weekDay: number = DatepickerCore.monthStartsWith(month:  number, year:  number);

Или

const weekDay: number = DatepickerCore.monthStartsWith(date: Date);

Возвращает день недели, с которого начинается месяц, в виде номера. Понедельник равен нулю.

Например:

DatepickerCore.monthStartsWith(6, 2021) // returns 3

Свойства

shownDate

const date: Date = datepicker.shownDate

Используется для хранения даты, месяц которой в данный момент отображен в календаре.


selectedDate

const date: Date = datepicker.shownDate

Используется для хранения даты, которую выбрал пользователь.