@syncfusion/ej2-navigations 29.2.7 → 30.1.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +2 -0
- package/dist/ej2-navigations.min.js +2 -2
- package/dist/ej2-navigations.umd.min.js +2 -2
- package/dist/ej2-navigations.umd.min.js.map +1 -1
- package/dist/es6/ej2-navigations.es2015.js +108 -30
- package/dist/es6/ej2-navigations.es2015.js.map +1 -1
- package/dist/es6/ej2-navigations.es5.js +109 -30
- package/dist/es6/ej2-navigations.es5.js.map +1 -1
- package/dist/global/ej2-navigations.min.js +2 -2
- package/dist/global/ej2-navigations.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +17 -69
- package/src/carousel/carousel.js +1 -7
- package/src/sidebar/sidebar.js +5 -1
- package/src/stepper/stepper.js +6 -5
- package/src/tab/tab.js +4 -1
- package/src/toolbar/toolbar-model.d.ts +8 -1
- package/src/toolbar/toolbar.d.ts +19 -0
- package/src/toolbar/toolbar.js +69 -13
- package/src/treeview/treeview.js +24 -3
- package/styles/bds-lite.css +29 -1
- package/styles/bds.css +31 -3
- package/styles/bootstrap-dark-lite.css +29 -1
- package/styles/bootstrap-dark.css +33 -5
- package/styles/bootstrap-lite.css +29 -1
- package/styles/bootstrap.css +33 -5
- package/styles/bootstrap4-lite.css +29 -1
- package/styles/bootstrap4.css +31 -3
- package/styles/bootstrap5-dark-lite.css +23 -1
- package/styles/bootstrap5-dark.css +26 -4
- package/styles/bootstrap5-lite.css +23 -1
- package/styles/bootstrap5.3-lite.css +23 -1
- package/styles/bootstrap5.3.css +25 -3
- package/styles/bootstrap5.css +26 -4
- package/styles/breadcrumb/_layout.scss +14 -0
- package/styles/breadcrumb/bds.css +15 -0
- package/styles/breadcrumb/bootstrap-dark.css +15 -0
- package/styles/breadcrumb/bootstrap.css +15 -0
- package/styles/breadcrumb/bootstrap4.css +15 -0
- package/styles/breadcrumb/bootstrap5-dark.css +15 -0
- package/styles/breadcrumb/bootstrap5.3.css +15 -0
- package/styles/breadcrumb/bootstrap5.css +15 -0
- package/styles/breadcrumb/fabric-dark.css +15 -0
- package/styles/breadcrumb/fabric.css +15 -0
- package/styles/breadcrumb/fluent-dark.css +15 -0
- package/styles/breadcrumb/fluent.css +15 -0
- package/styles/breadcrumb/fluent2.css +15 -0
- package/styles/breadcrumb/highcontrast-light.css +15 -0
- package/styles/breadcrumb/highcontrast.css +15 -0
- package/styles/breadcrumb/material-dark.css +15 -0
- package/styles/breadcrumb/material.css +15 -0
- package/styles/breadcrumb/material3-dark.css +15 -0
- package/styles/breadcrumb/material3.css +15 -0
- package/styles/breadcrumb/tailwind-dark.css +15 -0
- package/styles/breadcrumb/tailwind.css +15 -0
- package/styles/breadcrumb/tailwind3.css +15 -0
- package/styles/fabric-dark-lite.css +29 -1
- package/styles/fabric-dark.css +31 -3
- package/styles/fabric-lite.css +29 -1
- package/styles/fabric.css +31 -3
- package/styles/fluent-dark-lite.css +29 -1
- package/styles/fluent-dark.css +32 -4
- package/styles/fluent-lite.css +29 -1
- package/styles/fluent.css +32 -4
- package/styles/fluent2-lite.css +29 -1
- package/styles/fluent2.css +31 -3
- package/styles/highcontrast-light-lite.css +29 -1
- package/styles/highcontrast-light.css +31 -3
- package/styles/highcontrast-lite.css +31 -3
- package/styles/highcontrast.css +33 -5
- package/styles/material-dark-lite.css +31 -3
- package/styles/material-dark.css +33 -5
- package/styles/material-lite.css +31 -3
- package/styles/material.css +33 -5
- package/styles/material3-dark-lite.css +29 -1
- package/styles/material3-dark.css +31 -4
- package/styles/material3-lite.css +29 -1
- package/styles/material3.css +31 -4
- package/styles/pager/_bds-definition.scss +1 -1
- package/styles/pager/_bigger.scss +0 -1
- package/styles/pager/_bootstrap-dark-definition.scss +1 -1
- package/styles/pager/_bootstrap-definition.scss +1 -1
- package/styles/pager/_bootstrap4-definition.scss +1 -1
- package/styles/pager/_bootstrap5-definition.scss +2 -2
- package/styles/pager/_bootstrap5.3-definition.scss +1 -1
- package/styles/pager/_fabric-dark-definition.scss +1 -1
- package/styles/pager/_fabric-definition.scss +1 -1
- package/styles/pager/_fluent-definition.scss +2 -2
- package/styles/pager/_fluent2-definition.scss +1 -1
- package/styles/pager/_fusionnew-definition.scss +1 -1
- package/styles/pager/_highcontrast-definition.scss +1 -1
- package/styles/pager/_highcontrast-light-definition.scss +1 -1
- package/styles/pager/_layout.scss +8 -0
- package/styles/pager/_material-dark-definition.scss +1 -1
- package/styles/pager/_material-definition.scss +1 -1
- package/styles/pager/_material3-definition.scss +1 -1
- package/styles/pager/_tailwind-definition.scss +1 -1
- package/styles/pager/_tailwind3-definition.scss +2 -2
- package/styles/pager/bds.css +13 -3
- package/styles/pager/bootstrap-dark.css +13 -3
- package/styles/pager/bootstrap.css +13 -3
- package/styles/pager/bootstrap4.css +13 -3
- package/styles/pager/bootstrap5-dark.css +8 -4
- package/styles/pager/bootstrap5.3.css +7 -3
- package/styles/pager/bootstrap5.css +8 -4
- package/styles/pager/fabric-dark.css +13 -3
- package/styles/pager/fabric.css +13 -3
- package/styles/pager/fluent-dark.css +14 -4
- package/styles/pager/fluent.css +14 -4
- package/styles/pager/fluent2.css +13 -3
- package/styles/pager/highcontrast-light.css +13 -3
- package/styles/pager/highcontrast.css +13 -3
- package/styles/pager/material-dark.css +13 -3
- package/styles/pager/material.css +13 -3
- package/styles/pager/material3-dark.css +13 -4
- package/styles/pager/material3.css +13 -4
- package/styles/pager/tailwind-dark.css +13 -3
- package/styles/pager/tailwind.css +13 -3
- package/styles/pager/tailwind3.css +14 -4
- package/styles/tailwind-dark-lite.css +29 -1
- package/styles/tailwind-dark.css +31 -3
- package/styles/tailwind-lite.css +29 -1
- package/styles/tailwind.css +31 -3
- package/styles/tailwind3-lite.css +29 -1
- package/styles/tailwind3.css +32 -4
- package/styles/toolbar/_bootstrap-dark-definition.scss +1 -1
- package/styles/toolbar/_bootstrap-definition.scss +1 -1
- package/styles/toolbar/_highcontrast-definition.scss +1 -1
- package/styles/toolbar/_material-dark-definition.scss +2 -2
- package/styles/toolbar/_material-definition.scss +2 -2
- package/styles/toolbar/bootstrap-dark.css +2 -2
- package/styles/toolbar/bootstrap.css +2 -2
- package/styles/toolbar/highcontrast.css +2 -2
- package/styles/toolbar/material-dark.css +2 -2
- package/styles/toolbar/material.css +2 -2
- package/styles/treeview/_layout.scss +4 -0
- package/styles/treeview/bds.css +3 -0
- package/styles/treeview/bootstrap-dark.css +3 -0
- package/styles/treeview/bootstrap.css +3 -0
- package/styles/treeview/bootstrap4.css +3 -0
- package/styles/treeview/bootstrap5-dark.css +3 -0
- package/styles/treeview/bootstrap5.3.css +3 -0
- package/styles/treeview/bootstrap5.css +3 -0
- package/styles/treeview/fabric-dark.css +3 -0
- package/styles/treeview/fabric.css +3 -0
- package/styles/treeview/fluent-dark.css +3 -0
- package/styles/treeview/fluent.css +3 -0
- package/styles/treeview/fluent2.css +3 -0
- package/styles/treeview/highcontrast-light.css +3 -0
- package/styles/treeview/highcontrast.css +3 -0
- package/styles/treeview/material-dark.css +3 -0
- package/styles/treeview/material.css +3 -0
- package/styles/treeview/material3-dark.css +3 -0
- package/styles/treeview/material3.css +3 -0
- package/styles/treeview/tailwind-dark.css +3 -0
- package/styles/treeview/tailwind.css +3 -0
- package/styles/treeview/tailwind3.css +3 -0
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version :
|
|
3
|
+
* version : 30.1.37
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2024. All rights reserved.
|
|
5
5
|
* Use of this code is subject to the terms of our license.
|
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
package/package.json
CHANGED
|
@@ -1,69 +1,21 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
|
|
10
|
-
"registry": true,
|
|
11
|
-
"raw": "@syncfusion/ej2-navigations@*",
|
|
12
|
-
"name": "@syncfusion/ej2-navigations",
|
|
13
|
-
"escapedName": "@syncfusion%2fej2-navigations",
|
|
14
|
-
"scope": "@syncfusion",
|
|
15
|
-
"rawSpec": "*",
|
|
16
|
-
"saveSpec": null,
|
|
17
|
-
"fetchSpec": "*"
|
|
18
|
-
},
|
|
19
|
-
"_requiredBy": [
|
|
20
|
-
"/",
|
|
21
|
-
"/@syncfusion/ej2",
|
|
22
|
-
"/@syncfusion/ej2-angular-navigations",
|
|
23
|
-
"/@syncfusion/ej2-charts",
|
|
24
|
-
"/@syncfusion/ej2-diagrams",
|
|
25
|
-
"/@syncfusion/ej2-documenteditor",
|
|
26
|
-
"/@syncfusion/ej2-dropdowns",
|
|
27
|
-
"/@syncfusion/ej2-filemanager",
|
|
28
|
-
"/@syncfusion/ej2-gantt",
|
|
29
|
-
"/@syncfusion/ej2-grids",
|
|
30
|
-
"/@syncfusion/ej2-image-editor",
|
|
31
|
-
"/@syncfusion/ej2-inplace-editor",
|
|
32
|
-
"/@syncfusion/ej2-interactive-chat",
|
|
33
|
-
"/@syncfusion/ej2-kanban",
|
|
34
|
-
"/@syncfusion/ej2-pdfviewer",
|
|
35
|
-
"/@syncfusion/ej2-pivotview",
|
|
36
|
-
"/@syncfusion/ej2-react-navigations",
|
|
37
|
-
"/@syncfusion/ej2-ribbon",
|
|
38
|
-
"/@syncfusion/ej2-richtexteditor",
|
|
39
|
-
"/@syncfusion/ej2-schedule",
|
|
40
|
-
"/@syncfusion/ej2-spreadsheet",
|
|
41
|
-
"/@syncfusion/ej2-vue-navigations"
|
|
42
|
-
],
|
|
43
|
-
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-navigations/-/ej2-navigations-29.2.5.tgz",
|
|
44
|
-
"_shasum": "ae405b35bb6f114d6a709cdb4b605491dacb797c",
|
|
45
|
-
"_spec": "@syncfusion/ej2-navigations@*",
|
|
46
|
-
"_where": "/jenkins/workspace/elease-automation_release_29.1.1/packages/included",
|
|
47
|
-
"author": {
|
|
48
|
-
"name": "Syncfusion Inc."
|
|
49
|
-
},
|
|
50
|
-
"bugs": {
|
|
51
|
-
"url": "https://github.com/syncfusion/ej2-javascript-ui-controls/issues"
|
|
52
|
-
},
|
|
53
|
-
"bundleDependencies": false,
|
|
2
|
+
"name": "@syncfusion/ej2-navigations",
|
|
3
|
+
"version": "30.1.37",
|
|
4
|
+
"description": "A package of Essential JS 2 navigation components such as Tree-view, Tab, Toolbar, Context-menu, and Accordion which is used to navigate from one page to another",
|
|
5
|
+
"author": "Syncfusion Inc.",
|
|
6
|
+
"license": "SEE LICENSE IN license",
|
|
7
|
+
"main": "./dist/ej2-navigations.umd.min.js",
|
|
8
|
+
"module": "./index.js",
|
|
9
|
+
"es2015": "./dist/es6/ej2-navigations.es5.js",
|
|
54
10
|
"dependencies": {
|
|
55
|
-
"@syncfusion/ej2-base": "~
|
|
56
|
-
"@syncfusion/ej2-buttons": "~
|
|
57
|
-
"@syncfusion/ej2-data": "~
|
|
58
|
-
"@syncfusion/ej2-inputs": "~
|
|
59
|
-
"@syncfusion/ej2-lists": "~
|
|
60
|
-
"@syncfusion/ej2-popups": "~
|
|
11
|
+
"@syncfusion/ej2-base": "~30.1.37",
|
|
12
|
+
"@syncfusion/ej2-buttons": "~30.1.37",
|
|
13
|
+
"@syncfusion/ej2-data": "~30.1.37",
|
|
14
|
+
"@syncfusion/ej2-inputs": "~30.1.37",
|
|
15
|
+
"@syncfusion/ej2-lists": "~30.1.37",
|
|
16
|
+
"@syncfusion/ej2-popups": "~30.1.37"
|
|
61
17
|
},
|
|
62
|
-
"deprecated": false,
|
|
63
|
-
"description": "A package of Essential JS 2 navigation components such as Tree-view, Tab, Toolbar, Context-menu, and Accordion which is used to navigate from one page to another",
|
|
64
18
|
"devDependencies": {},
|
|
65
|
-
"es2015": "./dist/es6/ej2-navigations.es5.js",
|
|
66
|
-
"homepage": "https://www.syncfusion.com/javascript-ui-controls",
|
|
67
19
|
"keywords": [
|
|
68
20
|
"ej2",
|
|
69
21
|
"syncfusion",
|
|
@@ -153,15 +105,11 @@
|
|
|
153
105
|
"trace page location",
|
|
154
106
|
"list of breadcrumb links"
|
|
155
107
|
],
|
|
156
|
-
"license": "SEE LICENSE IN license",
|
|
157
|
-
"main": "./dist/ej2-navigations.umd.min.js",
|
|
158
|
-
"module": "./index.js",
|
|
159
|
-
"name": "@syncfusion/ej2-navigations",
|
|
160
108
|
"repository": {
|
|
161
109
|
"type": "git",
|
|
162
|
-
"url": "
|
|
110
|
+
"url": "https://github.com/syncfusion/ej2-javascript-ui-controls.git"
|
|
163
111
|
},
|
|
164
112
|
"typings": "index.d.ts",
|
|
165
|
-
"
|
|
166
|
-
"
|
|
113
|
+
"sideEffects": false,
|
|
114
|
+
"homepage": "https://www.syncfusion.com/javascript-ui-controls"
|
|
167
115
|
}
|
package/src/carousel/carousel.js
CHANGED
|
@@ -167,9 +167,6 @@ var Carousel = /** @class */ (function (_super) {
|
|
|
167
167
|
}
|
|
168
168
|
break;
|
|
169
169
|
case 'enableTouchSwipe':
|
|
170
|
-
if (!this.enableTouchSwipe && this.touchModule) {
|
|
171
|
-
this.touchModule.destroy();
|
|
172
|
-
}
|
|
173
170
|
if (this.element.querySelector("." + CLS_ITEMS)) {
|
|
174
171
|
this.renderTouchActions();
|
|
175
172
|
}
|
|
@@ -572,9 +569,6 @@ var Carousel = /** @class */ (function (_super) {
|
|
|
572
569
|
this.keyModule = new KeyboardEvents(this.element, { keyAction: this.keyHandler.bind(this), keyConfigs: this.keyConfigs });
|
|
573
570
|
};
|
|
574
571
|
Carousel.prototype.renderTouchActions = function () {
|
|
575
|
-
if (!this.enableTouchSwipe) {
|
|
576
|
-
return;
|
|
577
|
-
}
|
|
578
572
|
this.touchModule = new Touch(this.element, { swipe: this.swipeHandler.bind(this) });
|
|
579
573
|
};
|
|
580
574
|
Carousel.prototype.applyAnimation = function () {
|
|
@@ -1142,7 +1136,7 @@ var Carousel = /** @class */ (function (_super) {
|
|
|
1142
1136
|
}
|
|
1143
1137
|
};
|
|
1144
1138
|
Carousel.prototype.wireEvents = function () {
|
|
1145
|
-
if (this.animationEffect !== 'Custom'
|
|
1139
|
+
if (this.animationEffect !== 'Custom') {
|
|
1146
1140
|
this.swipeModehandlers();
|
|
1147
1141
|
}
|
|
1148
1142
|
EventHandler.add(this.element, 'focusin focusout', this.onFocusActions, this);
|
package/src/sidebar/sidebar.js
CHANGED
|
@@ -202,6 +202,8 @@ var Sidebar = /** @class */ (function (_super) {
|
|
|
202
202
|
var sibling = document.querySelector('.e-main-content') || this.targetEle;
|
|
203
203
|
if (this.target && this.showBackdrop && sibling && !isNullOrUndefined(this.defaultBackdropDiv)) {
|
|
204
204
|
removeClass([this.defaultBackdropDiv], DEFAULTBACKDROP);
|
|
205
|
+
this.defaultBackdropDiv.remove();
|
|
206
|
+
this.defaultBackdropDiv = null;
|
|
205
207
|
}
|
|
206
208
|
else if (this.showBackdrop && this.modal) {
|
|
207
209
|
this.modal.style.display = 'none';
|
|
@@ -304,7 +306,9 @@ var Sidebar = /** @class */ (function (_super) {
|
|
|
304
306
|
removeClass([_this.element], CLOSE);
|
|
305
307
|
setStyle(_this.element, { 'width': formatUnit(_this.width) });
|
|
306
308
|
_this.setType(_this.type);
|
|
307
|
-
_this.
|
|
309
|
+
if (_this.targetEle && !_this.targetEle.querySelector('.e-sidebar-overlay')) {
|
|
310
|
+
_this.createBackDrop();
|
|
311
|
+
}
|
|
308
312
|
_this.setAnimation();
|
|
309
313
|
if (_this.type === 'Slide') {
|
|
310
314
|
document.body.classList.add('e-sidebar-overflow');
|
package/src/stepper/stepper.js
CHANGED
|
@@ -225,11 +225,6 @@ var Stepper = /** @class */ (function (_super) {
|
|
|
225
225
|
Stepper.prototype.updateAnimation = function () {
|
|
226
226
|
var progressEle = this.element.querySelector('.e-progressbar-value');
|
|
227
227
|
if (this.animation.enable) {
|
|
228
|
-
if (this.animation.duration >= 0) {
|
|
229
|
-
if (progressEle) {
|
|
230
|
-
progressEle.style.setProperty('--duration', ((this.animation.duration) + 'ms'));
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
228
|
if (this.animation.delay >= 0) {
|
|
234
229
|
if (progressEle) {
|
|
235
230
|
progressEle.style.setProperty('--delay', ((this.animation.delay) + 'ms'));
|
|
@@ -808,6 +803,9 @@ var Stepper = /** @class */ (function (_super) {
|
|
|
808
803
|
}
|
|
809
804
|
};
|
|
810
805
|
Stepper.prototype.navigationHandler = function (index, stepStatus, isUpdated) {
|
|
806
|
+
if (index !== this.activeStep && this.progressbar) {
|
|
807
|
+
this.progressbar.style.transitionDuration = this.animation.duration + 'ms';
|
|
808
|
+
}
|
|
811
809
|
index = Math.min(index, this.steps.length - 1);
|
|
812
810
|
var Itemslength = this.stepperItemElements.length;
|
|
813
811
|
if (index >= 0 && index < Itemslength - 1) {
|
|
@@ -878,6 +876,9 @@ var Stepper = /** @class */ (function (_super) {
|
|
|
878
876
|
this.updateIndicatorStatus(i, itemElement);
|
|
879
877
|
}
|
|
880
878
|
this.updateStepInteractions();
|
|
879
|
+
if (this.progressbar) {
|
|
880
|
+
this.progressbar.style.transitionDuration = '0ms';
|
|
881
|
+
}
|
|
881
882
|
};
|
|
882
883
|
Stepper.prototype.calculateProgressbarPos = function () {
|
|
883
884
|
var _this = this;
|
package/src/tab/tab.js
CHANGED
|
@@ -334,6 +334,7 @@ var Tab = /** @class */ (function (_super) {
|
|
|
334
334
|
if (this.isReact && this.portals && this.portals.length > 0) {
|
|
335
335
|
this.renderReactTemplates(function () {
|
|
336
336
|
_this.refreshOverflow();
|
|
337
|
+
_this.selectingContent(_this.selectedItem, _this.isInteracted);
|
|
337
338
|
_this.refreshActiveBorder();
|
|
338
339
|
});
|
|
339
340
|
}
|
|
@@ -1407,7 +1408,9 @@ var Tab = /** @class */ (function (_super) {
|
|
|
1407
1408
|
}
|
|
1408
1409
|
break;
|
|
1409
1410
|
case 'openPopup':
|
|
1410
|
-
e.
|
|
1411
|
+
if (!isNOU(e.target) && (e.target.classList.contains(CLS_WRAP))) {
|
|
1412
|
+
e.preventDefault();
|
|
1413
|
+
}
|
|
1411
1414
|
if (!isNOU(this.popEle) && this.popEle.classList.contains(CLS_POPUP_CLOSE)) {
|
|
1412
1415
|
this.popObj.show(this.show);
|
|
1413
1416
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Component, EventHandler, Property, Event, EmitType, BaseEventArgs } from '@syncfusion/ej2-base';import { addClass, removeClass, isVisible, closest, attributes, detach, classList, KeyboardEvents } from '@syncfusion/ej2-base';import { selectAll, setStyleAttribute as setStyle, KeyboardEventArgs, select } from '@syncfusion/ej2-base';import { isNullOrUndefined as isNOU, getUniqueID, formatUnit, Collection, compile as templateCompiler } from '@syncfusion/ej2-base';import { INotifyPropertyChanged, NotifyPropertyChanges, ChildProperty, Browser, SanitizeHtmlHelper } from '@syncfusion/ej2-base';import { Popup } from '@syncfusion/ej2-popups';import { calculatePosition } from '@syncfusion/ej2-popups';import { Button, IconPosition } from '@syncfusion/ej2-buttons';import { HScroll } from '../common/h-scroll';import { VScroll } from '../common/v-scroll';
|
|
2
|
-
import {OverflowOption,ItemType,DisplayMode,ItemAlign,ClickEventArgs,OverflowMode,BeforeCreateArgs} from "./toolbar";
|
|
2
|
+
import {OverflowOption,ItemType,DisplayMode,ItemAlign,ClickEventArgs,OverflowMode,BeforeCreateArgs,KeyDownEventArgs} from "./toolbar";
|
|
3
3
|
import {ComponentModel} from '@syncfusion/ej2-base';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -284,4 +284,11 @@ export interface ToolbarModel extends ComponentModel{
|
|
|
284
284
|
*/
|
|
285
285
|
beforeCreate?: EmitType<BeforeCreateArgs>;
|
|
286
286
|
|
|
287
|
+
/**
|
|
288
|
+
* The event will be fired when the keyboard interaction occurs on the Toolbar.
|
|
289
|
+
*
|
|
290
|
+
* @event keyDown
|
|
291
|
+
*/
|
|
292
|
+
keyDown?: EmitType<KeyDownEventArgs>;
|
|
293
|
+
|
|
287
294
|
}
|
package/src/toolbar/toolbar.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Component, EmitType, BaseEventArgs } from '@syncfusion/ej2-base';
|
|
2
|
+
import { KeyboardEventArgs } from '@syncfusion/ej2-base';
|
|
2
3
|
import { INotifyPropertyChanged, ChildProperty } from '@syncfusion/ej2-base';
|
|
3
4
|
import { ToolbarModel, ItemModel } from './toolbar-model';
|
|
4
5
|
/**
|
|
@@ -65,6 +66,17 @@ export interface BeforeCreateArgs extends BaseEventArgs {
|
|
|
65
66
|
/** Specifies the scrolling distance in scroller. */
|
|
66
67
|
scrollStep: number;
|
|
67
68
|
}
|
|
69
|
+
/** An interface that holds options to control keyDown event in the toolbar. */
|
|
70
|
+
export interface KeyDownEventArgs extends BaseEventArgs {
|
|
71
|
+
/** Defines the keyboard event arguments. */
|
|
72
|
+
originalEvent: KeyboardEventArgs;
|
|
73
|
+
/** Defines the prevent action. */
|
|
74
|
+
cancel?: boolean;
|
|
75
|
+
/** Defines the current Toolbar item. */
|
|
76
|
+
currentItem?: HTMLElement;
|
|
77
|
+
/** Defines the next Toolbar item. */
|
|
78
|
+
nextItem?: HTMLElement;
|
|
79
|
+
}
|
|
68
80
|
/**
|
|
69
81
|
* An item object that is used to configure Toolbar commands.
|
|
70
82
|
*/
|
|
@@ -347,6 +359,12 @@ export declare class Toolbar extends Component<HTMLElement> implements INotifyPr
|
|
|
347
359
|
* @event beforeCreate
|
|
348
360
|
*/
|
|
349
361
|
beforeCreate: EmitType<BeforeCreateArgs>;
|
|
362
|
+
/**
|
|
363
|
+
* The event will be fired when the keyboard interaction occurs on the Toolbar.
|
|
364
|
+
*
|
|
365
|
+
* @event keyDown
|
|
366
|
+
*/
|
|
367
|
+
keyDown: EmitType<KeyDownEventArgs>;
|
|
350
368
|
/**
|
|
351
369
|
* Removes the control from the DOM and also removes all its related events.
|
|
352
370
|
*
|
|
@@ -382,6 +400,7 @@ export declare class Toolbar extends Component<HTMLElement> implements INotifyPr
|
|
|
382
400
|
private remove;
|
|
383
401
|
private elementFocus;
|
|
384
402
|
private clstElement;
|
|
403
|
+
private getNextFocusableItem;
|
|
385
404
|
private keyHandling;
|
|
386
405
|
private keyActionHandler;
|
|
387
406
|
/**
|
package/src/toolbar/toolbar.js
CHANGED
|
@@ -377,6 +377,38 @@ var Toolbar = /** @class */ (function (_super) {
|
|
|
377
377
|
}
|
|
378
378
|
return clst;
|
|
379
379
|
};
|
|
380
|
+
Toolbar.prototype.getNextFocusableItem = function (currentItem, action) {
|
|
381
|
+
var selector = "." + CLS_ITEM + ":not(." + CLS_DISABLE + "):not(." + CLS_SEPARATOR + "):not(." + CLS_HIDDEN + ")";
|
|
382
|
+
var items = Array.from(this.element.querySelectorAll(selector));
|
|
383
|
+
var currentIndex = items.indexOf(currentItem);
|
|
384
|
+
if (currentIndex < 0) {
|
|
385
|
+
return null;
|
|
386
|
+
}
|
|
387
|
+
var nextIndex;
|
|
388
|
+
switch (action) {
|
|
389
|
+
case 'moveRight':
|
|
390
|
+
case 'moveDown':
|
|
391
|
+
case 'tab':
|
|
392
|
+
nextIndex = (currentIndex + 1) % items.length;
|
|
393
|
+
break;
|
|
394
|
+
case 'moveLeft':
|
|
395
|
+
case 'moveUp':
|
|
396
|
+
nextIndex = (currentIndex - 1 + items.length) % items.length;
|
|
397
|
+
break;
|
|
398
|
+
case 'home':
|
|
399
|
+
nextIndex = 0;
|
|
400
|
+
break;
|
|
401
|
+
case 'end':
|
|
402
|
+
nextIndex = items.length - 1;
|
|
403
|
+
break;
|
|
404
|
+
default:
|
|
405
|
+
nextIndex = currentIndex;
|
|
406
|
+
}
|
|
407
|
+
if (nextIndex >= 0 && nextIndex < items.length) {
|
|
408
|
+
return items[parseInt(nextIndex.toString(), 10)];
|
|
409
|
+
}
|
|
410
|
+
return null;
|
|
411
|
+
};
|
|
380
412
|
Toolbar.prototype.keyHandling = function (clst, e, trgt, navChk, scrollChk) {
|
|
381
413
|
var popObj = this.popObj;
|
|
382
414
|
var rootEle = this.element;
|
|
@@ -442,19 +474,30 @@ var Toolbar = /** @class */ (function (_super) {
|
|
|
442
474
|
if (!this.isVertical) {
|
|
443
475
|
if (popObj && closest(trgt, '.e-popup')) {
|
|
444
476
|
var popEle = popObj.element;
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
477
|
+
if ((value === 'previous' && popEle.firstElementChild === clst)) {
|
|
478
|
+
var lastVisibleEle = this.focusLastVisibleEle([].slice.call(popEle.children));
|
|
479
|
+
if (lastVisibleEle) {
|
|
480
|
+
this.elementFocus(lastVisibleEle);
|
|
481
|
+
}
|
|
448
482
|
}
|
|
449
483
|
else if (value === 'next' && popEle.lastElementChild === clst) {
|
|
450
|
-
|
|
484
|
+
var firstVisibleEle = this.focusFirstVisibleEle([].slice.call(popEle.children));
|
|
485
|
+
if (firstVisibleEle) {
|
|
486
|
+
this.elementFocus(firstVisibleEle);
|
|
487
|
+
}
|
|
451
488
|
}
|
|
452
489
|
else {
|
|
453
490
|
this.eleFocus(clst, value);
|
|
454
491
|
}
|
|
455
492
|
}
|
|
456
493
|
else if (e.action === 'moveDown' && popObj && isVisible(popObj.element)) {
|
|
457
|
-
this.
|
|
494
|
+
var skipEle = this.eleContains(clst);
|
|
495
|
+
if (skipEle) {
|
|
496
|
+
this.eleFocus(clst, value);
|
|
497
|
+
}
|
|
498
|
+
else {
|
|
499
|
+
this.elementFocus(clst);
|
|
500
|
+
}
|
|
458
501
|
}
|
|
459
502
|
}
|
|
460
503
|
else {
|
|
@@ -500,8 +543,10 @@ var Toolbar = /** @class */ (function (_super) {
|
|
|
500
543
|
}
|
|
501
544
|
};
|
|
502
545
|
Toolbar.prototype.keyActionHandler = function (e) {
|
|
546
|
+
var _this = this;
|
|
503
547
|
var trgt = e.target;
|
|
504
|
-
if (
|
|
548
|
+
if ((e.action === 'home' || e.action === 'end' || e.action === 'moveRight' || e.action === 'moveLeft' || e.action === 'moveUp' || e.action === 'moveDown')
|
|
549
|
+
&& (trgt.tagName === 'INPUT' || trgt.tagName === 'TEXTAREA' || this.element.classList.contains(CLS_DISABLE))) {
|
|
505
550
|
return;
|
|
506
551
|
}
|
|
507
552
|
e.preventDefault();
|
|
@@ -509,7 +554,19 @@ var Toolbar = /** @class */ (function (_super) {
|
|
|
509
554
|
var tbarScrollChk = trgt.classList.contains(CLS_TBARSCRLNAV);
|
|
510
555
|
var clst = this.clstElement(tbrNavChk, trgt);
|
|
511
556
|
if (clst || tbarScrollChk) {
|
|
512
|
-
|
|
557
|
+
var currentItem = clst;
|
|
558
|
+
var nextItem = this.getNextFocusableItem(currentItem, e.action);
|
|
559
|
+
var keyDownEventArgs = {
|
|
560
|
+
originalEvent: e,
|
|
561
|
+
currentItem: currentItem,
|
|
562
|
+
nextItem: nextItem,
|
|
563
|
+
cancel: false
|
|
564
|
+
};
|
|
565
|
+
this.trigger('keyDown', keyDownEventArgs, function (keyDownArgs) {
|
|
566
|
+
if (!keyDownArgs.cancel) {
|
|
567
|
+
_this.keyHandling(clst, e, trgt, tbrNavChk, tbarScrollChk);
|
|
568
|
+
}
|
|
569
|
+
});
|
|
513
570
|
}
|
|
514
571
|
};
|
|
515
572
|
/**
|
|
@@ -548,7 +605,7 @@ var Toolbar = /** @class */ (function (_super) {
|
|
|
548
605
|
var index = 0;
|
|
549
606
|
while (index < nodes.length) {
|
|
550
607
|
var ele = nodes[parseInt(index.toString(), 10)];
|
|
551
|
-
if (!ele.classList.contains(CLS_HIDDEN) && !ele.classList.contains(CLS_DISABLE)) {
|
|
608
|
+
if (!ele.classList.contains(CLS_SEPARATOR) && !ele.classList.contains(CLS_HIDDEN) && !ele.classList.contains(CLS_DISABLE)) {
|
|
552
609
|
return ele;
|
|
553
610
|
}
|
|
554
611
|
index++;
|
|
@@ -560,7 +617,7 @@ var Toolbar = /** @class */ (function (_super) {
|
|
|
560
617
|
var index = nodes.length - 1;
|
|
561
618
|
while (index >= 0) {
|
|
562
619
|
var ele = nodes[parseInt(index.toString(), 10)];
|
|
563
|
-
if (!ele.classList.contains(CLS_HIDDEN) && !ele.classList.contains(CLS_DISABLE)) {
|
|
620
|
+
if (!ele.classList.contains(CLS_SEPARATOR) && !ele.classList.contains(CLS_HIDDEN) && !ele.classList.contains(CLS_DISABLE)) {
|
|
564
621
|
return ele;
|
|
565
622
|
}
|
|
566
623
|
index--;
|
|
@@ -2048,10 +2105,6 @@ var Toolbar = /** @class */ (function (_super) {
|
|
|
2048
2105
|
return isNOU(ele.getAttribute('data-tabindex')) ? '-1' : ele.getAttribute('data-tabindex');
|
|
2049
2106
|
};
|
|
2050
2107
|
Toolbar.prototype.itemClick = function (e) {
|
|
2051
|
-
var itemClosest = !isNOU(closest(e.currentTarget, '.' + CLS_TEMPLATE));
|
|
2052
|
-
if (itemClosest) {
|
|
2053
|
-
return;
|
|
2054
|
-
}
|
|
2055
2108
|
this.activeEleSwitch(e.currentTarget);
|
|
2056
2109
|
};
|
|
2057
2110
|
Toolbar.prototype.activeEleSwitch = function (ele) {
|
|
@@ -2414,6 +2467,9 @@ var Toolbar = /** @class */ (function (_super) {
|
|
|
2414
2467
|
__decorate([
|
|
2415
2468
|
Event()
|
|
2416
2469
|
], Toolbar.prototype, "beforeCreate", void 0);
|
|
2470
|
+
__decorate([
|
|
2471
|
+
Event()
|
|
2472
|
+
], Toolbar.prototype, "keyDown", void 0);
|
|
2417
2473
|
Toolbar = __decorate([
|
|
2418
2474
|
NotifyPropertyChanges
|
|
2419
2475
|
], Toolbar);
|
package/src/treeview/treeview.js
CHANGED
|
@@ -1810,7 +1810,10 @@ var TreeView = /** @class */ (function (_super) {
|
|
|
1810
1810
|
activeElement_1.classList.add(ITEM_ANIMATION_ACTIVE);
|
|
1811
1811
|
}
|
|
1812
1812
|
start_1 = liEle_1.offsetHeight;
|
|
1813
|
-
|
|
1813
|
+
var computedStyle = window.getComputedStyle(liEle_1);
|
|
1814
|
+
var paddingTop = parseFloat(computedStyle.paddingTop);
|
|
1815
|
+
var paddingBottom = parseFloat(computedStyle.paddingBottom);
|
|
1816
|
+
end_1 = select('.' + TEXTWRAP, currLi).offsetHeight + paddingBottom + paddingTop;
|
|
1814
1817
|
},
|
|
1815
1818
|
progress: function (args) {
|
|
1816
1819
|
args.element.style.display = 'block';
|
|
@@ -3461,6 +3464,15 @@ var TreeView = /** @class */ (function (_super) {
|
|
|
3461
3464
|
_this.dragAction(e, virtualEle);
|
|
3462
3465
|
},
|
|
3463
3466
|
dragStop: function (e) {
|
|
3467
|
+
if (!e.target) {
|
|
3468
|
+
if (e.helper && e.helper.parentNode) {
|
|
3469
|
+
detach(e.helper);
|
|
3470
|
+
}
|
|
3471
|
+
document.body.style.cursor = '';
|
|
3472
|
+
removeClass([_this.element], DRAGGING);
|
|
3473
|
+
_this.dragStartAction = false;
|
|
3474
|
+
return;
|
|
3475
|
+
}
|
|
3464
3476
|
removeClass([_this.element], DRAGGING);
|
|
3465
3477
|
if (!e.target.classList.contains('e-sibling')) {
|
|
3466
3478
|
_this.removeVirtualEle();
|
|
@@ -3500,6 +3512,9 @@ var TreeView = /** @class */ (function (_super) {
|
|
|
3500
3512
|
});
|
|
3501
3513
|
this.dropObj = new Droppable(this.element, {
|
|
3502
3514
|
out: function (e) {
|
|
3515
|
+
if (!e.target) {
|
|
3516
|
+
return;
|
|
3517
|
+
}
|
|
3503
3518
|
if (!isNOU(e) && !e.target.classList.contains(SIBLING) &&
|
|
3504
3519
|
(_this.dropObj.dragData.default && _this.dropObj.dragData.default.helper.classList.contains(ROOT))) {
|
|
3505
3520
|
document.body.style.cursor = 'not-allowed';
|
|
@@ -3538,6 +3553,9 @@ var TreeView = /** @class */ (function (_super) {
|
|
|
3538
3553
|
}
|
|
3539
3554
|
};
|
|
3540
3555
|
TreeView.prototype.dragAction = function (e, virtualEle) {
|
|
3556
|
+
if (!e.target) {
|
|
3557
|
+
return;
|
|
3558
|
+
}
|
|
3541
3559
|
var dropRoot = closest(e.target, '.' + DROPPABLE);
|
|
3542
3560
|
var dropWrap = closest(e.target, '.' + TEXTWRAP);
|
|
3543
3561
|
var icon = select('div.' + ICON, virtualEle);
|
|
@@ -5265,7 +5283,10 @@ var TreeView = /** @class */ (function (_super) {
|
|
|
5265
5283
|
}
|
|
5266
5284
|
this.groupedData = this.getGroupedData(this.treeData, this.fields.parentID);
|
|
5267
5285
|
}
|
|
5268
|
-
this.
|
|
5286
|
+
var fNode = select('.' + LISTITEM + '[tabindex="0"]', this.element);
|
|
5287
|
+
if (isNOU(fNode)) {
|
|
5288
|
+
this.setNodeFocusable();
|
|
5289
|
+
}
|
|
5269
5290
|
this.updateCheckedStateFromDS();
|
|
5270
5291
|
if (this.showCheckBox && dropLi) {
|
|
5271
5292
|
this.ensureParentCheckState(dropLi);
|
|
@@ -5659,7 +5680,7 @@ var TreeView = /** @class */ (function (_super) {
|
|
|
5659
5680
|
* @returns {void}
|
|
5660
5681
|
*/
|
|
5661
5682
|
TreeView.prototype.uncheckAll = function (nodes) {
|
|
5662
|
-
if (this.showCheckBox) {
|
|
5683
|
+
if (this.showCheckBox && this.checkedNodes.length > 0) {
|
|
5663
5684
|
this.doCheckBoxAction(nodes, false);
|
|
5664
5685
|
}
|
|
5665
5686
|
};
|
package/styles/bds-lite.css
CHANGED
|
@@ -72,6 +72,9 @@
|
|
|
72
72
|
padding-top: 6px;
|
|
73
73
|
line-height: 18px;
|
|
74
74
|
}
|
|
75
|
+
.e-pager div.e-parentmsgbar span.e-rightalign {
|
|
76
|
+
text-align: right;
|
|
77
|
+
}
|
|
75
78
|
.e-pager .e-pagesizes {
|
|
76
79
|
display: inline;
|
|
77
80
|
}
|
|
@@ -325,6 +328,12 @@
|
|
|
325
328
|
}
|
|
326
329
|
@media (max-width: 769px) {
|
|
327
330
|
.e-pager {
|
|
331
|
+
display: -webkit-box;
|
|
332
|
+
display: -ms-flexbox;
|
|
333
|
+
display: flex;
|
|
334
|
+
-webkit-box-align: center;
|
|
335
|
+
-ms-flex-align: center;
|
|
336
|
+
align-items: center;
|
|
328
337
|
padding: 13px 0;
|
|
329
338
|
}
|
|
330
339
|
.e-pager div.e-parentmsgbar {
|
|
@@ -523,7 +532,8 @@
|
|
|
523
532
|
.e-pager.e-rtl.e-rtl div.e-parentmsgbar {
|
|
524
533
|
float: initial;
|
|
525
534
|
margin-left: 0;
|
|
526
|
-
margin-top:
|
|
535
|
+
margin-top: 0;
|
|
536
|
+
padding-top: 0;
|
|
527
537
|
}
|
|
528
538
|
.e-pager.e-rtl .e-parentmsgbar {
|
|
529
539
|
float: right;
|
|
@@ -6406,6 +6416,9 @@
|
|
|
6406
6416
|
.e-treeview.e-virtualization .e-ul {
|
|
6407
6417
|
overflow: unset;
|
|
6408
6418
|
}
|
|
6419
|
+
.e-treeview .e-mask-parent {
|
|
6420
|
+
display: none;
|
|
6421
|
+
}
|
|
6409
6422
|
.e-treeview > .e-ul {
|
|
6410
6423
|
-webkit-overflow-scrolling: touch;
|
|
6411
6424
|
overflow: auto;
|
|
@@ -8278,6 +8291,21 @@ ejs-sidebar {
|
|
|
8278
8291
|
padding-right: 8px;
|
|
8279
8292
|
}
|
|
8280
8293
|
|
|
8294
|
+
.e-breadcrumb-menu-item {
|
|
8295
|
+
position: absolute;
|
|
8296
|
+
width: 1px;
|
|
8297
|
+
height: 1px;
|
|
8298
|
+
margin: -1px;
|
|
8299
|
+
padding: 0;
|
|
8300
|
+
overflow: hidden;
|
|
8301
|
+
clip: rect(0, 0, 0, 0);
|
|
8302
|
+
border: 0;
|
|
8303
|
+
}
|
|
8304
|
+
|
|
8305
|
+
.e-hidden-popup {
|
|
8306
|
+
visibility: hidden;
|
|
8307
|
+
}
|
|
8308
|
+
|
|
8281
8309
|
.e-breadcrumb .e-breadcrumb-item .e-breadcrumb-text {
|
|
8282
8310
|
color: var(--color-sf-text-secondary);
|
|
8283
8311
|
}
|
package/styles/bds.css
CHANGED
|
@@ -72,6 +72,9 @@
|
|
|
72
72
|
padding-top: 6px;
|
|
73
73
|
line-height: 18px;
|
|
74
74
|
}
|
|
75
|
+
.e-pager div.e-parentmsgbar span.e-rightalign {
|
|
76
|
+
text-align: right;
|
|
77
|
+
}
|
|
75
78
|
.e-pager .e-pagesizes {
|
|
76
79
|
display: inline;
|
|
77
80
|
}
|
|
@@ -325,6 +328,12 @@
|
|
|
325
328
|
}
|
|
326
329
|
@media (max-width: 769px) {
|
|
327
330
|
.e-pager {
|
|
331
|
+
display: -webkit-box;
|
|
332
|
+
display: -ms-flexbox;
|
|
333
|
+
display: flex;
|
|
334
|
+
-webkit-box-align: center;
|
|
335
|
+
-ms-flex-align: center;
|
|
336
|
+
align-items: center;
|
|
328
337
|
padding: 13px 0;
|
|
329
338
|
}
|
|
330
339
|
.e-pager div.e-parentmsgbar {
|
|
@@ -523,7 +532,8 @@
|
|
|
523
532
|
.e-pager.e-rtl.e-rtl div.e-parentmsgbar {
|
|
524
533
|
float: initial;
|
|
525
534
|
margin-left: 0;
|
|
526
|
-
margin-top:
|
|
535
|
+
margin-top: 0;
|
|
536
|
+
padding-top: 0;
|
|
527
537
|
}
|
|
528
538
|
.e-pager.e-rtl .e-parentmsgbar {
|
|
529
539
|
float: right;
|
|
@@ -811,14 +821,14 @@
|
|
|
811
821
|
.e-bigger .e-pager.e-rtl div.e-parentmsgbar,
|
|
812
822
|
.e-pager.e-bigger.e-rtl div.e-parentmsgbar {
|
|
813
823
|
margin-left: 0;
|
|
814
|
-
margin-top:
|
|
824
|
+
margin-top: 0;
|
|
815
825
|
}
|
|
816
826
|
}
|
|
817
827
|
@media (max-width: 769px) {
|
|
818
828
|
.e-bigger .e-pager.e-rtl div.e-parentmsgbar,
|
|
819
829
|
.e-pager.e-bigger.e-rtl div.e-parentmsgbar {
|
|
820
830
|
margin-left: 0;
|
|
821
|
-
margin-top:
|
|
831
|
+
margin-top: 0;
|
|
822
832
|
}
|
|
823
833
|
}
|
|
824
834
|
.e-bigger .e-pager.e-rtl .e-numericitem.e-currentitem,
|
|
@@ -8343,6 +8353,9 @@
|
|
|
8343
8353
|
.e-treeview.e-virtualization .e-ul {
|
|
8344
8354
|
overflow: unset;
|
|
8345
8355
|
}
|
|
8356
|
+
.e-treeview .e-mask-parent {
|
|
8357
|
+
display: none;
|
|
8358
|
+
}
|
|
8346
8359
|
.e-treeview > .e-ul {
|
|
8347
8360
|
-webkit-overflow-scrolling: touch;
|
|
8348
8361
|
overflow: auto;
|
|
@@ -10794,6 +10807,21 @@ ejs-sidebar {
|
|
|
10794
10807
|
padding-right: 8px;
|
|
10795
10808
|
}
|
|
10796
10809
|
|
|
10810
|
+
.e-breadcrumb-menu-item {
|
|
10811
|
+
position: absolute;
|
|
10812
|
+
width: 1px;
|
|
10813
|
+
height: 1px;
|
|
10814
|
+
margin: -1px;
|
|
10815
|
+
padding: 0;
|
|
10816
|
+
overflow: hidden;
|
|
10817
|
+
clip: rect(0, 0, 0, 0);
|
|
10818
|
+
border: 0;
|
|
10819
|
+
}
|
|
10820
|
+
|
|
10821
|
+
.e-hidden-popup {
|
|
10822
|
+
visibility: hidden;
|
|
10823
|
+
}
|
|
10824
|
+
|
|
10797
10825
|
.e-breadcrumb .e-breadcrumb-item .e-breadcrumb-text {
|
|
10798
10826
|
color: var(--color-sf-text-secondary);
|
|
10799
10827
|
}
|