Skip to content

Commit c9c89ac

Browse files
committed
Sync with Kendo UI Professional
1 parent 3233bd3 commit c9c89ac

File tree

5 files changed

+81
-20
lines changed

5 files changed

+81
-20
lines changed

docs/controls/chat/chat-items.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ You can also add images to the `heroCard` setting by passing the proper values t
5757
subtitle: "The Telerik Ninja",
5858
text: "This is an example.",
5959
images: [{
60-
url: "https://docs.telerik.com/kendo-ui/images/ninja-icon.png",
60+
url: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIkAAAB+CAMAAAAnbcJaAAAA8FBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZzAD///8AAAAmMwBNZgAKDQBzmQCPyQVggACAgICPvwCGtABAQEASGQJ8wxAdpEV8pgA5TQC/v78Bm1UdJgAwQABWcwAKnlBDWQBguiBpjAA5rTUToUpWtyVpvRswqjpNtCq/5tUmp0CGxguAzapDsC9zwBVAtIAgICDv+fTP7N9wx5+fn5/v7+/Pz8+f2r+Pj48wrnUgqGpgwZVQuopQUFBgYGDf39+138yP07Wvr69wcHAwMDDf8+qJnFBpoAv4f1eOAAAAEHRSTlMAgL9A758QzzDfIFBgr49wQcln2wAAABF0RVh0T3B0aW1pemVkAFRpbnlQTkfuIrzdAAAJDklEQVR42sWc53qiQBRARbCXDHcoBhYN9hKNMW03yZZke3//t9mZCTg0sQF7fmzLJ57cxoXg5g6iWhOa+bwEjFKeURAEoS6Wc/tRrNdyh1IWqAIeKIqiEYYY/JQKJzvrVJsSQPUgjVpBAqxMTcSZYqwQxhhjFRykQm0XjwJQCgdEoyCp9hTFcaYpA8uRqW7JiwDQVxRr/6DU88A1YjGHA6DkxdxmxApgDSFk9KGxn0fFUgy0M0YLA2FzXASwpo43gLhHeVSsFtoT06Y5EqIzQ+JrIAcb8jvXR15lHge5lMoRIiXgBwwEJb6yWF4OcqEFcxIWUc+Qh/FuQSlXsIkOR7MAGsVYEWSouwRFUIfoKAwboOLLkCvCUbYHpZjvm+hYpipInkHXBNI0enu/oJSlMUqAs76nWGqgILQYTZAXe8ugrZOWSQRjsJ7pRQkjNBst2rOOt7LjB61A8pkUtqvSVE2907m96HXa/q8Lm0UKfQMlxxAgT1qoCoremU1G55NAu4OQsginBVAq5gqq2ZkvqcdZS7ExZ7NJYUBEElcpg7JaLm701kCFAMImERsRElcB9WaFDEV9WfUEQaiJhBOBIG5KDSKkoGItdc1im1QxtwsCr5GkVfpDuizUBaHpLL8nYoxTnYskrhJF6WTDMCnzOZKOiooJCmOALaDko5bwopSCCFdRgUR8MtH5AJ7aanTrlFooTc6Iyt+LXq8zv0IumJ6tQzRtlBJcBRRz0iEyEzdlfIPh1ELVmoqKNUVXy/PeaIEIllTMrEjCKuwSY7K8on+FZi5MY4gyQAOKbbonx3JEbjBKHT5XnMV0AFG5MVHKcJVGCYAt6zhiiS0oKCvGAKIAQIcohE1EC2XHAKRiuUJVIqZaSUPZwa7MiyWiEjapZ1Ku8xn5ZXFBmxdqTCVkUqwcVa5TG3Z4fbuz1BGadK5Y91bou0LIRLAPjzTbBsdoKwu20c86OqJYUCfFyU22d7CmxRWQNu4DQF8xdxAZMZGZ+0oalFwehB1D8rJ1DlpGpIat8i9uheZEJyIufRYUKbAnbQpJi+41QFBtM1QbFv3nKdoDvbP0zrdGxMZob7l11nfOWh5MwMqeJ8y2swnoV6y+AMImla2HNGkiLHuAjmBxfosot+dtZ7yJB536DBYYdDhL0r2UiSOChuGp1mjtuFoMh4H7r9qULcYYW/CChfFYmWreaCrObamXgOizC919eehuRVWNiID2wpC9U5A+bKWPMXsp7S7DN9yQS/jsJ4z93/gAwx68+nzKeUV4DV5ev/KmdOK7XdGXYuq1ZXmPQo77kxz/R/cDeHgny6ewRo7iXbfbpWbdriyr/XUTX9DMcHCgecqWb4f59fORHObb5eX76+uHB/mFU/DwGDYJc3l5TXh/L8uA3cwE75vYAZOmJzl/Tr/Kb95/eu4R7u4+fX8TZXIqyzxGv+Qw9w9PPYcHueuaTEbt0F3H6obkGP1X8puPd98vHQHOI3ggEX+r8gCFPJ7urt9fUu7ve5+4ydzNzC03ETckRwNi8vv+U48cwAt/Z4oqE37AC1/kWHo9x4Sjr2ZBk3ByDGIiX/aerz1BCafnw0tNfqYl/UGO5+45aNLuzNEGk9IUraExef4oR/EFQlF491bexkMwJhM68blJ2buZgOEz+f4kR/P4mjX2D3kfvvXuvSb6bKX7KtZ/KYx8dfL0XuaEhsRXeT/ue5fvwAoN2PaKtdEYNvWwBp/f9N7ISdK7lgGCmZk750AMm8pEg9PLZzlRnj86JnyB5SnCFa+Jdyefwun1XbImd3eOid5xmveqc4McrHyOI6q+Cnp8eEjc5NeLyS1y1qRJ9Ln4BPtMunfXyZp87MmvAFF4iUTfri+MfVer3aeETa4fmEm4i28vkOYzySuIg+EtqfWEYSahEll22mjoG7GS5jORe9/SM1msS0RfXejBEQtekz7IhLRMlusSWYzmoXEigoE4kIrJ6z4PA+PGUbJKPhOUtslXGLB9bb4e+a6S7xqwHjT5+JSwyNvP0KLNe+u28chRCrSOYCEPFsh3vffyQXQZj6drHtlK/VkF7Nmk9RVf7ltQ85pg/67d/X3pfi9dwgfnqF9eRfMatqIqpFYn61K90b1bbIzJ6w/k6uDnpnew8EbGioNGmCr8b4ij34wWiOO/E1vwmSjryzebHYaBkqJ97g5Yfv7j5LH/8k/TDJQSS7dUb51BC82ASTa0O522m6K20zr1zE1Y7y7XRleRPzooqCgD9At30M97M90tWCnwEBVKF967zGg04QXbyMyE9+6tv1YYJpwETM5QuvDTzGLkZoaXCecENJQq8/UwW9I/cQaVnA8RhihF9NXqyi1ap2f0+cvvUAiaKCg92qM53xvXKXIuaGo5P4BRekzWBXqzCDSPLeUCVFSUHe3zdfOohaBJHkyUOuGdoBW+PS1AC2XEZLQIdw6nBjbKhlnkWONUwULZMNe9i1AxF6ICZyhrDFKvYQowRFnTiny6sAYWyo75Od8bQ0jZpedqtdJ5C4coZNM9fHEzVB6SQHpUA2WAPjtv87uwkUiZ1Kzu7ikmb5wgQiY125mt91feOKHhlsHEb7si09incjOoFD7USlEKPCjKxscGMLanKDkGtFzjggJmpAcGBjaTm65CLo6qBDjy0wwtomAOrcSyd0ZyE48AcZ1s2IATeiaI9k087OGlKEx292CQzMUIhlpuGyJA39jwEJxNfGCMjsfmRRKfn0HkHGgr1BAnkB5lx0+X5WMfNVJwAm1TKu5kUpTiRq2KUxfhlONUhtP0RTg1SO8ENKYiu1NPS8WwmcieKjZKHLPPPqmyn4oEkPiHQzQ1pn1jy9Y6S7hE4CR3ANUSACgJBqRPn6Y/jGaCa4AxZp8HPBSxQsOSRLW02CfwjqBIw2K1jvawAArF3HGU88zlWI+8mDsesXSMizEkHpV6LhlEGhd1fEDtntlqUh78k+e0j1rGXhpjC1hekqVYbwBhMNwxMlOmITX5tpqsDI2MZbfiR68xVTD/LwLSQhTyQMFjRQv7mFpLwRZQKs0UNbhNo8IfOGU/shxjAriUmvVqLjPEutDIV8CPlG8IdTH3f6iKLuVcMvwD7nalr08dsxEAAAAASUVORK5CYII=",
6161
alt: "Ninja"
6262
}]
6363
}

docs/knowledge-base/display-time-on-value-axis.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ The `valueAxis` on categorical Kendo UI Charts supports the display of numbers o
4343
4444
The following example demonstrates how to display time on the value axis of categorical Kendo UI Charts.
4545

46-
```dojo
46+
```html
4747
<div id="chart"></div>
4848
<script>
4949
$("#chart").kendoChart({

src/kendo.popup.js

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -272,8 +272,7 @@ export const __meta__ = {
272272
overflow: HIDDEN,
273273
display: "block",
274274
position: ABSOLUTE
275-
})
276-
.attr("aria-hidden", false);
275+
});
277276

278277
parent = element.parent();
279278

@@ -308,8 +307,8 @@ export const __meta__ = {
308307
.kendoStop(true)
309308
.kendoAnimate(animation);
310309

311-
312310
element.attr("aria-hidden", false);
311+
313312
}
314313
},
315314

@@ -418,6 +417,10 @@ export const __meta__ = {
418417
if (that.visible()) {
419418
wrap = (that.wrapper[0] ? that.wrapper : kendo.wrap(that.element).hide());
420419

420+
if ($(document.activeElement).parents(".k-list-filter").length) {
421+
$(document.activeElement).blur();
422+
}
423+
421424
that._toggleResize(false);
422425

423426
if (that._closing || that._trigger(CLOSE)) {
@@ -455,15 +458,16 @@ export const __meta__ = {
455458
}
456459

457460
parent.kendoStop(true);
458-
that.element.attr("aria-hidden", true);
459461
wrap
460-
.css({ overflow: HIDDEN }) // stop callback will remove hidden overflow
461-
.attr("aria-hidden", true);
462+
.css({ overflow: HIDDEN }); // stop callback will remove hidden overflow
463+
462464
parent.kendoAnimate(animation);
463465

464466
if (skipEffects) {
465467
that._animationClose();
466468
}
469+
470+
that.element.attr("aria-hidden", true);
467471
}
468472
},
469473

tests/unit/actionsheet/aria.js

Lines changed: 45 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
import '@progress/kendo-ui/src/kendo.actionsheet.js';
2+
import { TimerUtils } from '../../helpers/unit/timer-utils.js';
3+
import { asyncTest } from '../../helpers/unit/async-utils.js';
4+
25

36
let ActionSheet = kendo.ui.ActionSheet,
47
div,
@@ -21,20 +24,21 @@ describe("kendo.ui.ActionSheet accessibility with AXE", function() {
2124
}, options));
2225
}
2326
beforeEach(function() {
27+
TimerUtils.initTimer();
2428
div = $("<div style='color:green'></div>").appendTo(Mocha.fixture);
2529

2630
});
2731
afterEach(function() {
32+
TimerUtils.destroyTimer();
2833
instance.destroy();
2934
kendo.destroy(Mocha.fixture);
3035
});
3136

32-
it("ActionSheet is accessible", async function() {
37+
asyncTest("ActionSheet is accessible", function(done) {
3338
createInstance({
3439
open: function(e) {
35-
setTimeout(async function() {
36-
await axeRunFixture();
37-
});
40+
TimerUtils.advanceTimer(1);
41+
done(() => axeRunFixture());
3842
},
3943
});
4044

@@ -58,48 +62,77 @@ describe("kendo.ui.ActionSheet WAI-ARIA", function() {
5862
}, options));
5963
}
6064
beforeEach(function() {
65+
TimerUtils.initTimer();
6166
div = $("<div style='color:green'></div>").appendTo(Mocha.fixture);
6267

6368
});
6469
afterEach(function() {
70+
TimerUtils.destroyTimer();
6571
instance.destroy();
6672
kendo.destroy(Mocha.fixture);
6773
});
6874

69-
it("ActionSheet items collection has role='group'", async function() {
75+
asyncTest("ActionSheet items collection has role='group'", function(done) {
76+
createInstance({
77+
open: function() {
78+
TimerUtils.advanceTimer(1);
79+
done(() => assert.equal(instance.wrapper.find(".k-list-ul").attr("role"), "group"));
80+
},
81+
});
82+
83+
instance.open();
84+
});
85+
86+
asyncTest("ActionSheet li elements have role='none'", function(done) {
7087
createInstance({
7188
open: function() {
72-
assert.equal(instance.wrapper.find(".k-list-ul").attr("role"), "group");
89+
TimerUtils.advanceTimer(1);
90+
done(() => assert.equal(instance.wrapper.find(".k-actionsheet-item").attr("role"), "button"));
7391
},
7492
});
7593

7694
instance.open();
7795
});
7896

79-
it("ActionSheet li elements have role='none'", async function() {
97+
asyncTest("ActionSheet has role='dialog'", function(done) {
8098
createInstance({
8199
open: function() {
82-
assert.equal(instance.wrapper.find(".k-actionsheet-item").attr("role"), "button");
100+
TimerUtils.advanceTimer(1);
101+
done(() => assert.equal(instance.wrapper.find(".k-actionsheet").attr("role"), "dialog"));
83102
},
84103
});
85104

86105
instance.open();
87106
});
88107

89-
it("ActionSheet has role='dialog'", async function() {
108+
asyncTest("ActionSheet has aria-modal='true'", function(done) {
90109
createInstance({
91110
open: function() {
92-
assert.equal(instance.wrapper.find(".k-actionsheet").attr("role"), "dialog");
111+
TimerUtils.advanceTimer(1);
112+
done(() => assert.equal(instance.wrapper.find(".k-actionsheet").attr("aria-modal"), "true"));
113+
},
114+
});
115+
116+
instance.open();
117+
});
118+
119+
asyncTest("ActionSheet has aria-hidden='true'", function(done) {
120+
createInstance({
121+
close: function() {
122+
TimerUtils.advanceTimer(1);
123+
done(() => assert.equal(instance.wrapper.find(".k-actionsheet").attr("aria-hidden"), "true"));
93124
},
94125
});
95126

96127
instance.open();
128+
instance.close();
97129
});
98130

99-
it("ActionSheet has aria-modal='true'", async function() {
131+
asyncTest("ActionSheet has aria-hidden='false'", function(done) {
100132
createInstance({
101133
open: function() {
102-
assert.equal(instance.wrapper.find(".k-actionsheet").attr("aria-modal"), "true");
134+
TimerUtils.advanceTimer(1);
135+
done(() => assert.equal(instance.wrapper.find(".k-actionsheet").attr("aria-hidden"), "false"));
103136
},
104137
});
105138

tests/unit/notification/aria.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,30 @@ describe("Notification WAI-ARIA", function() {
6666
assert.equal(element.attr("aria-hidden"), "true");
6767
});
6868

69+
it("Notification popup has aria-hidden set to 'true'", function() {
70+
notification = createNotification({
71+
button: true
72+
});
73+
74+
notification.show("foo");
75+
76+
let element = $(".k-notification");
77+
notification.hide();
78+
79+
assert.equal(element.attr("aria-hidden"), "true");
80+
});
81+
82+
it("Notification popup has aria-hidden set to 'false'", function() {
83+
notification = createNotification({
84+
button: true
85+
});
86+
87+
notification.show("foo");
88+
89+
let element = $(".k-notification");
90+
assert.equal(element.attr("aria-hidden"), "false");
91+
});
92+
6993
it("Notification does not violate AXE", async function() {
7094
notification = createNotification({
7195
button: true

0 commit comments

Comments
 (0)