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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84 | 2×
1×
1×
5×
1×
3×
3×
1×
1×
2×
2×
2×
1×
1×
1×
1×
3×
3×
1×
1×
2×
2×
2×
1×
1×
1×
5×
5×
5×
5×
5×
2×
2×
3×
3×
7×
3×
3×
4×
1×
2×
1×
3×
1×
14×
14×
3×
11×
11×
11×
11×
3×
3×
2×
3×
1×
| (function(f){Eif(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.dpicker_arrowNavigation = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){Iif(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
'use strict';
module.exports = function (DPicker) {
function positionInParent(children) {
return [].indexOf.call(children.parentNode.children, children);
}
function left(td, table) {
var previous = td.previousElementSibling;
if (previous && previous.querySelector('button')) {
previous.querySelector('button').focus();
return;
}
previous = td.parentNode.previousElementSibling;
previous = previous ? previous.querySelector('td:last-child button') : null;
if (previous) {
return previous.focus();
}
var last = table.querySelector('tr:last-child').querySelectorAll('td.dpicker-active');
last[last.length - 1].querySelector('button').focus();
}
function right(td, table) {
var next = td.nextElementSibling;
if (next && next.querySelector('button')) {
next.querySelector('button').focus();
return;
}
next = td.parentNode.nextElementSibling;
next = next ? next.querySelector('td:first-child button') : null;
if (next) {
return next.focus();
}
table.querySelector('tr:first-child').nextElementSibling.querySelectorAll('td.dpicker-active')[0].querySelector('button').focus();
}
function upOrDown(td, table, direction) {
var position = positionInParent(td);
var sibling = (direction === 'up' ? 'previous' : 'next') + 'ElementSibling';
var previousOrNext = td.parentNode[sibling];
previousOrNext = previousOrNext ? previousOrNext.children[position] : null;
if (previousOrNext && previousOrNext.classList.contains('dpicker-active')) {
previousOrNext.querySelector('button').focus();
return;
}
var lastOrFirst = table.querySelector('tr:' + (direction === 'up' ? 'last-child' : 'first-child'));
while (lastOrFirst) {
if (lastOrFirst.children[position].classList.contains('dpicker-active')) {
lastOrFirst.children[position].querySelector('button').focus();
return;
}
lastOrFirst = lastOrFirst[sibling];
}
}
function up(td, table) {
return upOrDown(td, table, 'up');
}
function down(td, table) {
return upOrDown(td, table, 'down');
}
DPicker.events.dayKeyDown = DPicker.decorate(DPicker.events.dayKeyDown, function DayKeyDown(evt) {
var key = evt.which || evt.keyCode;
if (key > 40 || key < 37) {
return;
}
evt.preventDefault();
var td = evt.target.parentNode;
var table = td.parentNode.parentNode;
switch (key) {
case 37: {
return left(td, table);
}
case 39: {
return right(td, table);
}
case 38: {
return up(td, table);
}
case 40: {
return down(td, table);
}
}
});
return DPicker;
};
},{}]},{},[1])(1)
}); |