mirror of
https://github.com/frappe/air-datepicker.git
synced 2026-01-14 11:01:22 +08:00
complete options section, fix onChangeMonth, onChangeYear, add svg to nav
This commit is contained in:
parent
ef33f4dfca
commit
02e887275b
13
dist/css/datepicker.css
vendored
13
dist/css/datepicker.css
vendored
@ -246,11 +246,22 @@
|
||||
|
||||
.datepicker--nav-action {
|
||||
width: 32px;
|
||||
border-radius: 2px; }
|
||||
border-radius: 2px;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none; }
|
||||
.datepicker--nav-action:hover {
|
||||
background: #eee; }
|
||||
.datepicker--nav-action.-disabled- {
|
||||
visibility: hidden; }
|
||||
.datepicker--nav-action svg {
|
||||
width: 32px;
|
||||
height: 32px; }
|
||||
.datepicker--nav-action path {
|
||||
fill: none;
|
||||
stroke: #bdbdbd;
|
||||
stroke-width: 2px; }
|
||||
|
||||
.datepicker--nav-title {
|
||||
border-radius: 2px;
|
||||
|
||||
2
dist/css/datepicker.min.css
vendored
2
dist/css/datepicker.min.css
vendored
File diff suppressed because one or more lines are too long
14
dist/js/datepicker.js
vendored
14
dist/js/datepicker.js
vendored
@ -48,8 +48,8 @@ var Datepicker;
|
||||
autoClose: false,
|
||||
|
||||
// navigation
|
||||
prevHtml: '«',
|
||||
nextHtml: '»',
|
||||
prevHtml: '<svg><path d="M 17,12 l -5,5 l 5,5"></path></svg>',
|
||||
nextHtml: '<svg><path d="M 14,12 l 5,5 l -5,5"></path></svg>',
|
||||
navTitles: {
|
||||
days: 'MM, yyyy',
|
||||
months: 'yyyy',
|
||||
@ -219,11 +219,11 @@ var Datepicker;
|
||||
switch (this.view) {
|
||||
case 'days':
|
||||
this.date = new Date(d.year, d.month + 1, 1);
|
||||
if (o.onChangeMonth) o.onChangeMonth(d.month + 1);
|
||||
if (o.onChangeMonth) o.onChangeMonth(this.parsedDate.month, this.parsedDate.year);
|
||||
break;
|
||||
case 'months':
|
||||
this.date = new Date(d.year + 1, d.month, 1);
|
||||
if (o.onChangeYear) o.onChangeYear(d.year + 1);
|
||||
if (o.onChangeYear) o.onChangeYear(this.parsedDate.year);
|
||||
break;
|
||||
case 'years':
|
||||
this.date = new Date(d.year + 10, 0, 1);
|
||||
@ -238,11 +238,11 @@ var Datepicker;
|
||||
switch (this.view) {
|
||||
case 'days':
|
||||
this.date = new Date(d.year, d.month - 1, 1);
|
||||
if (o.onChangeMonth) o.onChangeMonth(d.month - 1);
|
||||
if (o.onChangeMonth) o.onChangeMonth(this.parsedDate.month, this.parsedDate.year);
|
||||
break;
|
||||
case 'months':
|
||||
this.date = new Date(d.year - 1, d.month, 1);
|
||||
if (o.onChangeYear) o.onChangeYear(d.year - 1);
|
||||
if (o.onChangeYear) o.onChangeYear(this.parsedDate.year);
|
||||
break;
|
||||
case 'years':
|
||||
this.date = new Date(d.year - 10, 0, 1);
|
||||
@ -1119,7 +1119,7 @@ var Datepicker;
|
||||
},
|
||||
|
||||
_onClickNavButton: function (e) {
|
||||
var $el = $(e.target),
|
||||
var $el = $(e.target).closest('[data-action]'),
|
||||
action = $el.data('action');
|
||||
|
||||
this.d[action]();
|
||||
|
||||
2
dist/js/datepicker.min.js
vendored
2
dist/js/datepicker.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
.-text-center-,.promo-header{text-align:center}a,abbr,acronym,address,applet,article,aside,audio,big,blockquote,canvas,caption,center,cite,code,dd,del,details,dfn,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,header,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,strike,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}body{margin:0}body,html{width:100%;height:100%}*,:after,:before{box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}b,strong{font-weight:700}i{font-style:italic}a{outline:0;color:#47A6EC}textarea{overflow:auto}html{color:#333;font-family:Tahoma,sans-serif;font-size:14px}p{line-height:1.3;margin-bottom:14px}h1,h2,h3{font-family:'Fira Sans',sans-serif;line-height:1}h2{font-weight:100;font-size:32px;margin:48px 0 8px}h3{font-weight:500;font-size:18px;margin:24px 0 8px}.container{width:960px;margin:0 auto;padding:1px 0}.container article{margin:60px 0 30px}input[type=text]{border-radius:4px;outline:0;height:32px;border:1px solid silver;padding:0 8px;margin:0 0 14px;color:#444;font-family:Tahoma,sans-serif;transition:all .2s;width:250px}input[type=text]:focus{border-color:gold;box-shadow:0 0 8px rgba(0,0,0,.1)}ul{margin:0 0 16px}ul li{list-style:none;margin-bottom:8px}.example--label{background:#f4f4f4;border-radius:0 0 4px 4px;position:absolute;padding:4px 12px;right:8px;top:0}.hljs{font-family:Consolas,monospace;line-height:1.2;-moz-tab-size:4;tab-size:4}.example{border:1px solid #ddd;border-radius:4px;position:relative;margin:16px 0}.example .example-code{border:none;border-radius:0 0 4px 4px;border-top:1px solid #eee;margin:0}.example-inline{background:red;display:inline-block;vertical-align:middle;margin:0 4px}.example-inline .hljs{padding:0 4px}.example-content{padding:32px}.example-content h1:first-child,.example-content h2:first-child,.example-content h3:first-child{margin-top:0}.example-content>:last-child{margin-bottom:0!important}a:hover{color:#1373ba}.example-code{border:1px solid #ddd;border-radius:4px;overflow:hidden;margin:16px 0;font-size:13px}.param i,.param strong{display:inline-block;margin-right:4px;vertical-align:middle}.example-code code{padding:16px 32px}.param strong{background:#efefef;color:#333;border-radius:4px;font-weight:400;padding:3px 6px 4px}.param i{color:#838383;font-size:.95em;font-style:normal;font-weight:100;font-family:'Fira Sans',sans-serif}.promo-header{font-size:48px;font-weight:100}.promo-header span{display:block;font-size:.5em}.promo-input{height:40px;margin:26px 0;width:300px}.range-example input[type=text]{width:150px}.range-example span{display:inline-block;margin:0 8px}.param-header{margin-bottom:8px}.param-header h3{margin-bottom:2px}.param-header p{margin:0;font-size:13px}.param{margin-bottom:32px}.param-header--label{color:#707070;display:inline-block;vertical-align:middle}
|
||||
.-text-center-,.promo-header{text-align:center}a,abbr,acronym,address,applet,article,aside,audio,big,blockquote,canvas,caption,center,cite,code,dd,del,details,dfn,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,header,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,strike,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}body{margin:0}body,html{width:100%;height:100%}*,:after,:before{box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}b,strong{font-weight:700}i{font-style:italic}a{outline:0;color:#47A6EC}textarea{overflow:auto}html{color:#333;font-family:Tahoma,sans-serif;font-size:14px}p{line-height:1.3;margin-bottom:14px}h1,h2,h3,h4{font-family:'Fira Sans',sans-serif;line-height:1}h2{font-weight:100;font-size:32px;margin:48px 0 8px}h3{font-weight:500;font-size:18px;margin:24px 0 8px}h4{font-weight:400;color:#939393;font-size:16px;margin:24px 0 0}.container{width:960px;margin:0 auto;padding:1px 0}.container article{margin:60px 0 30px}input[type=text]{border-radius:4px;outline:0;height:32px;border:1px solid silver;padding:0 8px;margin:0 0 14px;color:#444;font-family:Tahoma,sans-serif;transition:all .2s;width:250px}.hljs,.param-inline{font-family:Consolas,monospace}input[type=text]:focus{border-color:gold;box-shadow:0 0 8px rgba(0,0,0,.1)}ul{margin:0 0 16px}ul li{list-style:none;margin-bottom:8px}.example--label{background:#f4f4f4;border-radius:0 0 4px 4px;position:absolute;padding:4px 12px;right:8px;top:0}.hljs{line-height:1.2;-moz-tab-size:4;tab-size:4}.example{border:1px solid #ddd;border-radius:4px;position:relative;margin:16px 0}.example .example-code{border:none;border-radius:0 0 4px 4px;border-top:1px solid #eee;margin:0}.example-inline{background:red;display:inline-block;vertical-align:middle;margin:0 4px}.example-inline .hljs{padding:0 4px}.example-content{padding:32px}.example-content h1:first-child,.example-content h2:first-child,.example-content h3:first-child{margin-top:0}.example-content>:last-child{margin-bottom:0!important}a:hover{color:#1373ba}.example-code{border:1px solid #ddd;border-radius:4px;overflow:hidden;margin:16px 0;font-size:13px}.param-inline i,.param-inline strong{display:inline-block;margin-right:4px;vertical-align:middle}.example-code code{padding:16px 32px}.param-inline strong{background:#efefef;color:#333;border-radius:4px;font-weight:400;padding:3px 6px 4px}.param-inline i{color:#838383;font-size:.95em;font-style:normal;font-weight:100;font-family:'Fira Sans',sans-serif}.promo-header{font-size:48px;font-weight:100}.promo-header span{display:block;font-size:.5em}.promo-input{height:40px;margin:26px 0;width:300px}.range-example input[type=text]{width:150px}.range-example span{display:inline-block;margin:0 8px}.param-header{margin-bottom:8px}.param-header h3{margin-bottom:2px}.param-header p{margin:0;font-size:13px}.param{margin-bottom:32px}.param-header--label{color:#707070;display:inline-block;vertical-align:middle}
|
||||
@ -1,5 +1,5 @@
|
||||
mixin param(content, type)
|
||||
span.param
|
||||
span.param-inline
|
||||
strong= content
|
||||
if type
|
||||
i= type
|
||||
|
||||
@ -3,7 +3,7 @@ extends ../layout
|
||||
block content
|
||||
h1.promo-header
|
||||
| AIR DATEPICKER
|
||||
span легкий соврменныый jQuery календарь
|
||||
span легкий соврменный jQuery календарь
|
||||
|
||||
p.-text-center-
|
||||
input.promo-input.datepicker-here(type='text' id='example-promo' data-position='bottom center')
|
||||
@ -219,9 +219,9 @@ block content
|
||||
.param
|
||||
+param-header('weekends', 'array', '[6, 0]')
|
||||
p
|
||||
|Массив индексов дней, которые будут считаться выходными днями. Им будет добавлен класс
|
||||
| Массив индексов дней, которые будут считаться выходными днями. Им будет добавлен класс
|
||||
+example-inline('.-weekend-','css')
|
||||
|. По умолчанию это суббота и воскресенье.
|
||||
| . По умолчанию это суббота и воскресенье.
|
||||
|
||||
.param
|
||||
+param-header('dateFormat', 'string', '""')
|
||||
@ -268,3 +268,210 @@ block content
|
||||
+param-header('toggleSelected', 'boolean', 'true')
|
||||
p Если true, то клик на выделенной дате снимет выделение.
|
||||
|
||||
.param
|
||||
+param-header('position', 'string', '"bottom left"')
|
||||
p
|
||||
| Позиционирование календаря отностиельно текстового поля. Первым значением задается основная ось позиционирования,
|
||||
| воторым - положение на этой оси. Например
|
||||
+example-inline('{position: "right top"}', 'js')
|
||||
| - утсановит позицию клаендаря справа вверху от текстового поля.
|
||||
|
||||
.param
|
||||
+param-header('offset','number', 12)
|
||||
p Отступ от основной оси позиционирования.
|
||||
|
||||
.param
|
||||
+param-header('view', 'string', '"days"')
|
||||
p Начальный вид календаря. Возможноые значения:
|
||||
ul
|
||||
li
|
||||
+example-inline('days','js')
|
||||
| - отображение дней месяца
|
||||
li
|
||||
+example-inline('months','js')
|
||||
| - отображение месяцев одного года
|
||||
li
|
||||
+example-inline('years','js')
|
||||
| - отображение годов одной декады
|
||||
|
||||
.param
|
||||
+param-header('minView', 'string', '"days"')
|
||||
p
|
||||
| Минимальное представление календаря, по наступлению которого, выбор ячейки приведет к ее активации, а не переходу к следующему виду.
|
||||
| Возможные значения такие же как и у параметра
|
||||
+example-inline('view')
|
||||
| .
|
||||
|
||||
.param
|
||||
+param-header('showOtherMonths', 'boolean', 'true')
|
||||
p Если true, то будут отображаться дни других месяцев.
|
||||
|
||||
.param
|
||||
+param-header('selectOtherMonths', 'boolean', 'true')
|
||||
p Если true, то можно будет выбрать дни из других месяцев.
|
||||
|
||||
.param
|
||||
+param-header('moveToOtherMonthsOnSelect', 'boolean', 'true')
|
||||
p Если true, то при выборе дней из других месяца, будет осуществялться переход к этому месяцу.
|
||||
|
||||
.param
|
||||
+param-header('showOtherYears', 'boolean', 'true')
|
||||
p Если true, то при отображении декады, будут показаны годы из других декад.
|
||||
|
||||
.param
|
||||
+param-header('selectOtherYears', 'boolean', 'true')
|
||||
p Если true, то можно будет выбрать года из других декад
|
||||
|
||||
.param
|
||||
+param-header('moveToOtherYearsOnSelect', 'boolean', 'true')
|
||||
p Если true, то при выборе года из другой декады, будет осуществлен переход к этой декаде.
|
||||
|
||||
.param
|
||||
+param-header('minDate', 'Date', '""')
|
||||
p Минимальная дата для возможности выбора. Все даты, идущее до нее нельзя будет активировать.
|
||||
|
||||
.param
|
||||
+param-header('maxDate', 'Date', '""')
|
||||
p Максимальная дата для возможности выбора. Все даты, идущее после нее нельзя будет выбрать.
|
||||
|
||||
.param
|
||||
+param-header('disableNavWhenOutOfRange', 'boolean', 'true')
|
||||
p Если true, то при наступлении даты, которая была бы меньше минимально возможной или больше максимально возможной, деактвировались бы кнопки навигации 'вперед', 'назад'
|
||||
|
||||
.param
|
||||
+param-header('multipleDates', 'boolean|number', 'false')
|
||||
p Если true, то можно будет выбрать неограниченное количество дат. Если передать число, то количество выбираемых дат будет ограниченно этим числом.
|
||||
|
||||
.param
|
||||
+param-header('multipleDatesSeparator', 'string', '","')
|
||||
p Разделитель дат, который будет вставлен между датами при объеденения нескольких дат в одну строку.
|
||||
|
||||
.param
|
||||
+param-header('todayButton', 'boolean', 'false')
|
||||
p Если true, то будет отображена кнопка "Сегодня".
|
||||
|
||||
.param
|
||||
+param-header('clearButton', 'boolean', 'false')
|
||||
p Если true, то будет отображена кнопка "Очистить".
|
||||
|
||||
.param
|
||||
+param-header('showEvent','string','"focus"')
|
||||
p Тип события, по наступлению которого будет показан календарь.
|
||||
|
||||
.param
|
||||
+param-header('autoClose', 'boolean', 'false')
|
||||
p Если true, то при активации даты, календарь закроется.
|
||||
|
||||
.param
|
||||
+param-header('prevHtml', 'string', '<svg><path d="M 17,12 l -5,5 l 5,5"></path></svg>')
|
||||
p Контент кнопки 'предыдущий месяц|год|декада'.
|
||||
|
||||
.param
|
||||
+param-header('nextHtml', 'string', '<svg><path d="M 14,12 l 5,5 l -5,5"></path></svg>')
|
||||
p Контент кнопки 'следующий месяц|год|декада'.
|
||||
|
||||
.param
|
||||
+param-header('navTitles', 'object')
|
||||
+example-code('js').
|
||||
navTitles = {
|
||||
days: 'MM, yyyy',
|
||||
months: 'yyyy',
|
||||
years: 'yyyy1 - yyyy2'
|
||||
};
|
||||
p
|
||||
| Значение заголовка календаря в зависимости от текущего вида, можно использовать те же обозночения что и в
|
||||
+example-inline('dateFormat', 'js')
|
||||
| . Недостающие поля будут взяты из значения по умолчанию. Также можно использовать html теги.
|
||||
+example-code('js')
|
||||
:code
|
||||
$('#my-datepicker').datepicker({
|
||||
navTitles: {
|
||||
days: '<h3>Выберете дату заезда</h3> MM, yyyy'
|
||||
}
|
||||
})
|
||||
|
||||
h2 События
|
||||
.param
|
||||
+param-header('onSelect(formattedDate, date, inst)', 'function', 'null')
|
||||
p Функция обратного вызова при выборе даты.
|
||||
ul
|
||||
li
|
||||
+param('formattedDate', 'string')
|
||||
| - отформатированная дата.
|
||||
li
|
||||
+param('date', 'Date|array')
|
||||
| - объект
|
||||
+example-inline('Date', 'js')
|
||||
| выбранной даты, если
|
||||
+example-inline('{multipleDates: true}', 'js')
|
||||
| , то будет передан массив таких объектов.
|
||||
li
|
||||
+param('inst','object')
|
||||
| - экземпляр плагина.
|
||||
|
||||
.param
|
||||
+param-header('onChangeMonth(month, year)','function','null')
|
||||
p Функция обратного вызова при изменении месяца.
|
||||
ul
|
||||
li
|
||||
+param('month','number')
|
||||
| - номер месяца (от 0 до 12), к которому осуществлен переход.
|
||||
li
|
||||
+param('year','number')
|
||||
| - номер года, к которому осуществлен переход.
|
||||
|
||||
.param
|
||||
+param-header('onChangeYear(year)','function', 'null')
|
||||
p Функция обратного вызова при изменении года.
|
||||
ul
|
||||
li
|
||||
+param('year','number')
|
||||
| - номер года, к которому осуществлен переход
|
||||
|
||||
.param
|
||||
+param-header('onChangeDecade(decade)','function', 'null')
|
||||
p Функция обратного вызова при изменении декады.
|
||||
ul
|
||||
li
|
||||
+param('decade','array')
|
||||
| - массив, состоящий из номера года с которого начинается декада, и года на котором она заканчивается.
|
||||
|
||||
.param
|
||||
+param-header('onChangeView(view)', 'function', 'null')
|
||||
p Функция обратного вызова при изменении вида календаря
|
||||
ul
|
||||
li
|
||||
+param('view', 'string')
|
||||
| - вид, к которому осуществлен переход (days, months, years).
|
||||
|
||||
.param
|
||||
+param-header('onRenderCell(date, cellType)', 'function', 'null')
|
||||
p Функция обратного вызова при отрисовке ячейки календаря.
|
||||
ul
|
||||
li
|
||||
+param('date', 'Date')
|
||||
| - объект даты текущей ячейки
|
||||
li
|
||||
+param('cellType', 'string')
|
||||
| - тип текущей ячейки (day, month, year).
|
||||
p Функция должна возвращать объект, которой может состоять из трех полей:
|
||||
+example-code('js').
|
||||
{
|
||||
html: '', // Кастомный контент ячейки
|
||||
classes: '', // Дополнительные классы для ячейки
|
||||
disabled: '' // true/false, если true, то ячейку нельзя будет выбрать
|
||||
}
|
||||
h4 Пример
|
||||
+example-code('js').
|
||||
$('#my-datepicker').datepicker({
|
||||
// Передаем функцию, которая добавляет 4 числу каждого месяца класс 'my-class'
|
||||
// и делает их невозможными к выбору.
|
||||
onRenderCell: function(date, cellType) {
|
||||
if (cellType == 'day' && date.getDate() == 4) {
|
||||
return {
|
||||
classes: 'my-class',
|
||||
disabled: true
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@ -15,7 +15,7 @@ p {
|
||||
margin-bottom: 14px;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
h1, h2, h3, h4 {
|
||||
font-family: 'Fira Sans', sans-serif;
|
||||
line-height: 1;
|
||||
}
|
||||
@ -32,6 +32,13 @@ h3 {
|
||||
margin: 24px 0 8px;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-weight: normal;
|
||||
color: #939393;
|
||||
font-size: 16px;
|
||||
margin: 24px 0 0;
|
||||
}
|
||||
|
||||
|
||||
.container {
|
||||
width: 960px;
|
||||
@ -160,7 +167,8 @@ a {
|
||||
// -------------------------------------------------
|
||||
|
||||
|
||||
.param {
|
||||
.param-inline {
|
||||
font-family: Consolas, monospace;
|
||||
strong {
|
||||
background: #efefef;
|
||||
color: #333;
|
||||
|
||||
@ -48,8 +48,8 @@ var Datepicker;
|
||||
autoClose: false,
|
||||
|
||||
// navigation
|
||||
prevHtml: '«',
|
||||
nextHtml: '»',
|
||||
prevHtml: '<svg><path d="M 17,12 l -5,5 l 5,5"></path></svg>',
|
||||
nextHtml: '<svg><path d="M 14,12 l 5,5 l -5,5"></path></svg>',
|
||||
navTitles: {
|
||||
days: 'MM, yyyy',
|
||||
months: 'yyyy',
|
||||
@ -219,11 +219,11 @@ var Datepicker;
|
||||
switch (this.view) {
|
||||
case 'days':
|
||||
this.date = new Date(d.year, d.month + 1, 1);
|
||||
if (o.onChangeMonth) o.onChangeMonth(d.month + 1);
|
||||
if (o.onChangeMonth) o.onChangeMonth(this.parsedDate.month, this.parsedDate.year);
|
||||
break;
|
||||
case 'months':
|
||||
this.date = new Date(d.year + 1, d.month, 1);
|
||||
if (o.onChangeYear) o.onChangeYear(d.year + 1);
|
||||
if (o.onChangeYear) o.onChangeYear(this.parsedDate.year);
|
||||
break;
|
||||
case 'years':
|
||||
this.date = new Date(d.year + 10, 0, 1);
|
||||
@ -238,11 +238,11 @@ var Datepicker;
|
||||
switch (this.view) {
|
||||
case 'days':
|
||||
this.date = new Date(d.year, d.month - 1, 1);
|
||||
if (o.onChangeMonth) o.onChangeMonth(d.month - 1);
|
||||
if (o.onChangeMonth) o.onChangeMonth(this.parsedDate.month, this.parsedDate.year);
|
||||
break;
|
||||
case 'months':
|
||||
this.date = new Date(d.year - 1, d.month, 1);
|
||||
if (o.onChangeYear) o.onChangeYear(d.year - 1);
|
||||
if (o.onChangeYear) o.onChangeYear(this.parsedDate.year);
|
||||
break;
|
||||
case 'years':
|
||||
this.date = new Date(d.year - 10, 0, 1);
|
||||
|
||||
@ -120,7 +120,7 @@
|
||||
},
|
||||
|
||||
_onClickNavButton: function (e) {
|
||||
var $el = $(e.target),
|
||||
var $el = $(e.target).closest('[data-action]'),
|
||||
action = $el.data('action');
|
||||
|
||||
this.d[action]();
|
||||
|
||||
@ -22,6 +22,7 @@
|
||||
.datepicker--nav-action {
|
||||
width: $dayCellSize;
|
||||
border-radius: $datepickerBorderRadius;
|
||||
user-select: none;
|
||||
|
||||
&:hover {
|
||||
background: $colorCellHover;
|
||||
@ -30,6 +31,17 @@
|
||||
&.-disabled- {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
svg {
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
|
||||
path {
|
||||
fill: none;
|
||||
stroke: #bdbdbd;
|
||||
stroke-width: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.datepicker--nav-title {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user