@syncfusion/ej2-ribbon 25.2.5 → 26.1.38
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 +3 -2
- package/dist/ej2-ribbon.umd.min.js +2 -2
- package/dist/ej2-ribbon.umd.min.js.map +1 -1
- package/dist/es6/ej2-ribbon.es2015.js +830 -593
- package/dist/es6/ej2-ribbon.es2015.js.map +1 -1
- package/dist/es6/ej2-ribbon.es5.js +821 -578
- package/dist/es6/ej2-ribbon.es5.js.map +1 -1
- package/dist/global/ej2-ribbon.min.js +2 -2
- package/dist/global/ej2-ribbon.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +13 -13
- package/src/ribbon/base/interface.d.ts +14 -0
- package/src/ribbon/base/ribbon-model.d.ts +1 -1
- package/src/ribbon/base/ribbon.d.ts +3 -1
- package/src/ribbon/base/ribbon.js +204 -95
- package/src/ribbon/items/ribbon-button.js +6 -1
- package/src/ribbon/items/ribbon-gallery.d.ts +15 -6
- package/src/ribbon/items/ribbon-gallery.js +164 -96
- package/src/ribbon/items/ribbon-groupbutton.d.ts +1 -0
- package/src/ribbon/items/ribbon-groupbutton.js +11 -3
- package/src/ribbon/models/ribbon-contextual-tab-settings-model.d.ts +1 -1
- package/src/ribbon/models/ribbon-gallery-group-model.d.ts +5 -5
- package/src/ribbon/models/ribbon-gallery-group.d.ts +2 -2
- package/src/ribbon/models/ribbon-gallery-group.js +2 -2
- package/src/ribbon/models/ribbon-gallery-item-model.d.ts +5 -5
- package/src/ribbon/models/ribbon-gallery-item.d.ts +1 -1
- package/src/ribbon/models/ribbon-gallery-item.js +1 -1
- package/src/ribbon/models/ribbon-gallery-settings-model.d.ts +1 -1
- package/src/ribbon/models/ribbon-gallery-settings.d.ts +3 -3
- package/src/ribbon/models/ribbon-gallery-settings.js +2 -2
- package/src/ribbon/modules/ribbon-backstage.d.ts +6 -3
- package/src/ribbon/modules/ribbon-backstage.js +65 -12
- package/src/ribbon/modules/ribbon-contextualtab.js +5 -2
- package/src/ribbon/modules/ribbon-keytip.d.ts +1 -0
- package/src/ribbon/modules/ribbon-keytip.js +58 -46
- package/styles/bootstrap-dark.css +477 -269
- package/styles/bootstrap-dark.scss +18 -1
- package/styles/bootstrap.css +481 -276
- package/styles/bootstrap.scss +18 -1
- package/styles/bootstrap4.css +480 -272
- package/styles/bootstrap4.scss +18 -1
- package/styles/bootstrap5-dark.css +495 -278
- package/styles/bootstrap5-dark.scss +18 -1
- package/styles/bootstrap5.css +495 -278
- package/styles/bootstrap5.scss +18 -1
- package/styles/fabric-dark.css +476 -269
- package/styles/fabric-dark.scss +18 -1
- package/styles/fabric.css +475 -272
- package/styles/fabric.scss +18 -1
- package/styles/fluent-dark.css +497 -277
- package/styles/fluent-dark.scss +18 -1
- package/styles/fluent.css +497 -277
- package/styles/fluent.scss +18 -1
- package/styles/fluent2.css +3893 -0
- package/styles/fluent2.scss +18 -0
- package/styles/highcontrast-light.css +470 -263
- package/styles/highcontrast-light.scss +17 -1
- package/styles/highcontrast.css +476 -273
- package/styles/highcontrast.scss +18 -1
- package/styles/material-dark.css +565 -283
- package/styles/material-dark.scss +18 -1
- package/styles/material.css +564 -289
- package/styles/material.scss +18 -1
- package/styles/material3-dark.css +521 -280
- package/styles/material3-dark.scss +18 -1
- package/styles/material3.css +521 -280
- package/styles/material3.scss +18 -1
- package/styles/ribbon/_bds-definition.scss +58 -20
- package/styles/ribbon/_bootstrap-dark-definition.scss +58 -20
- package/styles/ribbon/_bootstrap-definition.scss +59 -21
- package/styles/ribbon/_bootstrap4-definition.scss +59 -21
- package/styles/ribbon/_bootstrap5-definition.scss +59 -21
- package/styles/ribbon/_bootstrap5.3-definition.scss +398 -0
- package/styles/ribbon/_fabric-dark-definition.scss +57 -19
- package/styles/ribbon/_fabric-definition.scss +58 -20
- package/styles/ribbon/_fluent-definition.scss +61 -23
- package/styles/ribbon/_fluent2-definition.scss +398 -0
- package/styles/ribbon/_fusionnew-definition.scss +52 -14
- package/styles/ribbon/_highcontrast-definition.scss +60 -22
- package/styles/ribbon/_highcontrast-light-definition.scss +51 -13
- package/styles/ribbon/_layout.scss +371 -399
- package/styles/ribbon/_material-dark-definition.scss +58 -20
- package/styles/ribbon/_material-definition.scss +58 -20
- package/styles/ribbon/_material3-definition.scss +58 -19
- package/styles/ribbon/_tailwind-definition.scss +58 -20
- package/styles/ribbon/_theme.scss +118 -170
- package/styles/ribbon/bootstrap-dark.css +477 -269
- package/styles/ribbon/bootstrap.css +481 -276
- package/styles/ribbon/bootstrap4.css +480 -272
- package/styles/ribbon/bootstrap5-dark.css +495 -278
- package/styles/ribbon/bootstrap5.css +495 -278
- package/styles/ribbon/fabric-dark.css +476 -269
- package/styles/ribbon/fabric.css +475 -272
- package/styles/ribbon/fluent-dark.css +497 -277
- package/styles/ribbon/fluent.css +497 -277
- package/styles/ribbon/fluent2.css +3893 -0
- package/styles/ribbon/fluent2.scss +18 -0
- package/styles/ribbon/highcontrast-light.css +470 -263
- package/styles/ribbon/highcontrast.css +476 -273
- package/styles/ribbon/icons/_bootstrap5.3.scss +9 -0
- package/styles/ribbon/icons/_fluent2.scss +9 -0
- package/styles/ribbon/material-dark.css +565 -283
- package/styles/ribbon/material.css +564 -289
- package/styles/ribbon/material3-dark.css +521 -280
- package/styles/ribbon/material3.css +521 -280
- package/styles/ribbon/tailwind-dark.css +531 -280
- package/styles/ribbon/tailwind.css +531 -280
- package/styles/tailwind-dark.css +531 -280
- package/styles/tailwind-dark.scss +18 -1
- package/styles/tailwind.css +531 -280
- package/styles/tailwind.scss +18 -1
- package/CHANGELOG.md +0 -101
|
@@ -55,6 +55,10 @@ var RibbonGroupButton = /** @class */ (function () {
|
|
|
55
55
|
}
|
|
56
56
|
if (groupBtnSettings.items[parseInt(i.toString(), 10)].content) {
|
|
57
57
|
groupButtonEle.classList.add(constants.RIBBON_GROUP_BUTTON_CONTENT);
|
|
58
|
+
groupButtonEle.setAttribute('aria-label', groupBtnSettings.items[parseInt(i.toString(), 10)].content);
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
groupButtonEle.setAttribute('aria-label', 'groupbuttonitem');
|
|
58
62
|
}
|
|
59
63
|
var buttonEle = itemElement.querySelector('#' + item.id + constants.RIBBON_GROUP_BUTTON_ID + i);
|
|
60
64
|
if (groupBtnSettings.selection === RibbonGroupButtonSelection.Single) {
|
|
@@ -173,7 +177,8 @@ var RibbonGroupButton = /** @class */ (function () {
|
|
|
173
177
|
for (var j = 0; j < grpBtnSettings.items.length; j++) {
|
|
174
178
|
if (document.querySelector('#' + item.id + constants.RIBBON_GROUP_BUTTON_ID + j) && document.querySelector('#' + item.id + constants.RIBBON_GROUP_BUTTON_ID + j).classList.contains('e-active')) {
|
|
175
179
|
document.querySelector('#' + item.id + constants.RIBBON_GROUP_BUTTON_ID + j).classList.remove('e-active');
|
|
176
|
-
grpBtnSettings.items[parseInt(j.toString(), 10)].
|
|
180
|
+
grpBtnSettings.items[parseInt(j.toString(), 10)].
|
|
181
|
+
setProperties({ selected: false }, true);
|
|
177
182
|
}
|
|
178
183
|
}
|
|
179
184
|
document.querySelector('#' + item.id + constants.RIBBON_GROUP_BUTTON_ID + itemIndex).classList.toggle('e-active');
|
|
@@ -194,10 +199,12 @@ var RibbonGroupButton = /** @class */ (function () {
|
|
|
194
199
|
}
|
|
195
200
|
document.querySelector('#' + item.id + constants.RIBBON_GROUP_BUTTON_ID + itemIndex).classList.toggle('e-active');
|
|
196
201
|
if (document.querySelector('#' + item.id + constants.RIBBON_GROUP_BUTTON_ID + itemIndex).classList.contains('e-active')) {
|
|
197
|
-
grpBtnSettings.items[parseInt(itemIndex.toString(), 10)].
|
|
202
|
+
grpBtnSettings.items[parseInt(itemIndex.toString(), 10)].
|
|
203
|
+
setProperties({ selected: true }, true);
|
|
198
204
|
}
|
|
199
205
|
else {
|
|
200
|
-
grpBtnSettings.items[parseInt(itemIndex.toString(), 10)].
|
|
206
|
+
grpBtnSettings.items[parseInt(itemIndex.toString(), 10)].
|
|
207
|
+
setProperties({ selected: false }, true);
|
|
201
208
|
}
|
|
202
209
|
var activeEleCount = 0;
|
|
203
210
|
for (var n = 0; n < grpBtnSettings.items.length; n++) {
|
|
@@ -400,6 +407,7 @@ var RibbonGroupButton = /** @class */ (function () {
|
|
|
400
407
|
*
|
|
401
408
|
* @param {RibbonItemModel} item - Gets the ribbon item model.
|
|
402
409
|
* @param {HTMLElement} itemEle - Gets the ribbon item element.
|
|
410
|
+
* @param {DropDownButton} overflowButton - Gets the overflow button.
|
|
403
411
|
* @returns {void}
|
|
404
412
|
* @hidden
|
|
405
413
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChildProperty,
|
|
1
|
+
import { ChildProperty, Property, Collection } from '@syncfusion/ej2-base';import { RibbonTab } from './ribbon-tab';import { RibbonTabModel } from './ribbon-tab-model';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Interface for a class RibbonContextualTabSettings
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChildProperty, Collection, Property } from
|
|
1
|
+
import { ChildProperty, Collection, Property } from '@syncfusion/ej2-base';import { RibbonGalleryItemModel } from './ribbon-gallery-item-model';import { RibbonGalleryItem } from './ribbon-gallery-item';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Interface for a class RibbonGalleryGroup
|
|
@@ -15,28 +15,28 @@ export interface RibbonGalleryGroupModel {
|
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
17
|
* Defines the header for the group items present in Ribbon Gallery popup.
|
|
18
|
-
*
|
|
18
|
+
*
|
|
19
19
|
* @default ''
|
|
20
20
|
*/
|
|
21
21
|
header?: string;
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* Defines the width of the gallery items.
|
|
25
|
-
*
|
|
25
|
+
*
|
|
26
26
|
* @default 'auto'
|
|
27
27
|
*/
|
|
28
28
|
itemWidth?: string;
|
|
29
29
|
|
|
30
30
|
/**
|
|
31
31
|
* Defines the height of the gallery item.
|
|
32
|
-
*
|
|
32
|
+
*
|
|
33
33
|
* @default 'auto'
|
|
34
34
|
*/
|
|
35
35
|
itemHeight?: string;
|
|
36
36
|
|
|
37
37
|
/**
|
|
38
38
|
* Defines the CSS class to customize the gallery groups.
|
|
39
|
-
*
|
|
39
|
+
*
|
|
40
40
|
* @default ''
|
|
41
41
|
*/
|
|
42
42
|
cssClass?: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ChildProperty } from
|
|
2
|
-
import { RibbonGalleryItemModel } from
|
|
1
|
+
import { ChildProperty } from '@syncfusion/ej2-base';
|
|
2
|
+
import { RibbonGalleryItemModel } from './ribbon-gallery-item-model';
|
|
3
3
|
/**
|
|
4
4
|
* Defines the ribbon gallery group.
|
|
5
5
|
*/
|
|
@@ -17,8 +17,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
17
17
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
18
18
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
19
19
|
};
|
|
20
|
-
import { ChildProperty, Collection, Property } from
|
|
21
|
-
import { RibbonGalleryItem } from
|
|
20
|
+
import { ChildProperty, Collection, Property } from '@syncfusion/ej2-base';
|
|
21
|
+
import { RibbonGalleryItem } from './ribbon-gallery-item';
|
|
22
22
|
/**
|
|
23
23
|
* Defines the ribbon gallery group.
|
|
24
24
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChildProperty, Property } from
|
|
1
|
+
import { ChildProperty, Property } from '@syncfusion/ej2-base';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Interface for a class RibbonGalleryItem
|
|
@@ -7,14 +7,14 @@ export interface RibbonGalleryItemModel {
|
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Defines the content for the gallery item.
|
|
10
|
-
*
|
|
10
|
+
*
|
|
11
11
|
* @default ''
|
|
12
12
|
*/
|
|
13
13
|
content?: string;
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* Defines the image or icons for the gallery item.
|
|
17
|
-
*
|
|
17
|
+
*
|
|
18
18
|
* @default ''
|
|
19
19
|
*/
|
|
20
20
|
iconCss?: string;
|
|
@@ -28,14 +28,14 @@ export interface RibbonGalleryItemModel {
|
|
|
28
28
|
|
|
29
29
|
/**
|
|
30
30
|
* Defines the CSS class to customize the gallery items.
|
|
31
|
-
*
|
|
31
|
+
*
|
|
32
32
|
* @default ''
|
|
33
33
|
*/
|
|
34
34
|
cssClass?: string;
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
37
|
* Defines whether the item is disabled or not.
|
|
38
|
-
*
|
|
38
|
+
*
|
|
39
39
|
* @default false
|
|
40
40
|
*/
|
|
41
41
|
disabled?: boolean;
|
|
@@ -17,7 +17,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
17
17
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
18
18
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
19
19
|
};
|
|
20
|
-
import { ChildProperty, Property } from
|
|
20
|
+
import { ChildProperty, Property } from '@syncfusion/ej2-base';
|
|
21
21
|
/**
|
|
22
22
|
* Defines the ribbon gallery item.
|
|
23
23
|
*/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChildProperty, Collection, EmitType, Property, Event } from
|
|
1
|
+
import { ChildProperty, Collection, EmitType, Property, Event } from '@syncfusion/ej2-base';import { RibbonGalleryGroupModel } from './ribbon-gallery-group-model';import { RibbonGalleryGroup } from './ribbon-gallery-group';import { GalleryHoverEventArgs, GalleryItemEventArgs, GalleryPopupEventArgs, GallerySelectEventArgs, GalleryBeforeSelectEventArgs } from '../base/interface';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Interface for a class RibbonGallerySettings
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ChildProperty, EmitType } from
|
|
2
|
-
import { RibbonGalleryGroupModel } from
|
|
3
|
-
import { GalleryHoverEventArgs, GalleryItemEventArgs, GalleryPopupEventArgs, GallerySelectEventArgs, GalleryBeforeSelectEventArgs } from
|
|
1
|
+
import { ChildProperty, EmitType } from '@syncfusion/ej2-base';
|
|
2
|
+
import { RibbonGalleryGroupModel } from './ribbon-gallery-group-model';
|
|
3
|
+
import { GalleryHoverEventArgs, GalleryItemEventArgs, GalleryPopupEventArgs, GallerySelectEventArgs, GalleryBeforeSelectEventArgs } from '../base/interface';
|
|
4
4
|
/**
|
|
5
5
|
* Defines the ribbon gallery settings.
|
|
6
6
|
*/
|
|
@@ -17,8 +17,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
17
17
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
18
18
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
19
19
|
};
|
|
20
|
-
import { ChildProperty, Collection, Property, Event } from
|
|
21
|
-
import { RibbonGalleryGroup } from
|
|
20
|
+
import { ChildProperty, Collection, Property, Event } from '@syncfusion/ej2-base';
|
|
21
|
+
import { RibbonGalleryGroup } from './ribbon-gallery-group';
|
|
22
22
|
/**
|
|
23
23
|
* Defines the ribbon gallery settings.
|
|
24
24
|
*/
|
|
@@ -20,11 +20,13 @@ export declare class RibbonBackstage extends Component<HTMLElement> {
|
|
|
20
20
|
private contentItem;
|
|
21
21
|
private backstageTempEle;
|
|
22
22
|
private itemsWrapperEle;
|
|
23
|
+
private menuIndex;
|
|
24
|
+
private isCloseBtn;
|
|
23
25
|
constructor(parent: Ribbon);
|
|
24
26
|
/**
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
* @private
|
|
28
|
+
* @returns {void}
|
|
29
|
+
*/
|
|
28
30
|
protected render(): void;
|
|
29
31
|
/**
|
|
30
32
|
* @private
|
|
@@ -54,6 +56,7 @@ export declare class RibbonBackstage extends Component<HTMLElement> {
|
|
|
54
56
|
private addBackStageMenuKeyTip;
|
|
55
57
|
private checkMenuItems;
|
|
56
58
|
private createBackStagePopup;
|
|
59
|
+
private handleNavigation;
|
|
57
60
|
private updatePopupPositionOnRtl;
|
|
58
61
|
private createBackstageMenu;
|
|
59
62
|
private cloneMenuItem;
|
|
@@ -29,9 +29,9 @@ var RibbonBackstage = /** @class */ (function (_super) {
|
|
|
29
29
|
return _this;
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
* @private
|
|
33
|
+
* @returns {void}
|
|
34
|
+
*/
|
|
35
35
|
RibbonBackstage.prototype.render = function () {
|
|
36
36
|
// render code
|
|
37
37
|
};
|
|
@@ -133,6 +133,8 @@ var RibbonBackstage = /** @class */ (function (_super) {
|
|
|
133
133
|
if (firstMenuEle) {
|
|
134
134
|
firstMenuEle.classList.add('e-selected');
|
|
135
135
|
firstMenuEle.focus();
|
|
136
|
+
_this.menuIndex = 0;
|
|
137
|
+
_this.isCloseBtn = false;
|
|
136
138
|
}
|
|
137
139
|
_this.createBackStageContent(_this.menuCtrl.items[0].id, item.content);
|
|
138
140
|
break;
|
|
@@ -197,7 +199,8 @@ var RibbonBackstage = /** @class */ (function (_super) {
|
|
|
197
199
|
});
|
|
198
200
|
var targetEle;
|
|
199
201
|
if (backStageOptions.target) {
|
|
200
|
-
targetEle = backStageOptions.target instanceof HTMLElement ? backStageOptions.target :
|
|
202
|
+
targetEle = backStageOptions.target instanceof HTMLElement ? backStageOptions.target :
|
|
203
|
+
document.querySelector(backStageOptions.target);
|
|
201
204
|
targetEle.appendChild(this.popupHTMLElement);
|
|
202
205
|
}
|
|
203
206
|
else {
|
|
@@ -212,10 +215,47 @@ var RibbonBackstage = /** @class */ (function (_super) {
|
|
|
212
215
|
if (this.parent.enableRtl) {
|
|
213
216
|
this.updatePopupPositionOnRtl(this.parent.enableRtl);
|
|
214
217
|
}
|
|
215
|
-
this.popupHTMLElement.onkeydown = function (e) { if (e.code === 'Escape') {
|
|
216
|
-
_this.hideBackstage();
|
|
217
|
-
} };
|
|
218
218
|
this.hideBackstage();
|
|
219
|
+
EventHandler.add(this.popupHTMLElement, 'keyup', function (e) {
|
|
220
|
+
if (e.code === 'Escape') {
|
|
221
|
+
_this.hideBackstage();
|
|
222
|
+
}
|
|
223
|
+
_this.handleNavigation(e);
|
|
224
|
+
}, this);
|
|
225
|
+
};
|
|
226
|
+
RibbonBackstage.prototype.handleNavigation = function (e) {
|
|
227
|
+
var closeBtnEle = this.popupHTMLElement.querySelector('.e-ribbon-close-btn');
|
|
228
|
+
var menuItems = this.popupHTMLElement.querySelectorAll('.e-menu-item');
|
|
229
|
+
var arrowUp = e.key === 'ArrowUp';
|
|
230
|
+
var arrowDown = e.key === 'ArrowDown';
|
|
231
|
+
if (arrowUp || arrowDown) {
|
|
232
|
+
if ((arrowUp && this.menuIndex > 0) || (arrowDown && this.menuIndex < menuItems.length - 1 && !this.isCloseBtn)) {
|
|
233
|
+
this.menuIndex = arrowUp ? this.menuIndex - 1 : this.menuIndex + 1;
|
|
234
|
+
}
|
|
235
|
+
else {
|
|
236
|
+
if (closeBtnEle && !this.isCloseBtn) {
|
|
237
|
+
closeBtnEle.focus();
|
|
238
|
+
this.isCloseBtn = true;
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
this.menuIndex = arrowUp ? menuItems.length - 1 : 0;
|
|
242
|
+
this.isCloseBtn = false;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
for (var i = 0; i < menuItems.length; i++) {
|
|
246
|
+
menuItems[parseInt(i.toString(), 10)].classList.remove('e-focused');
|
|
247
|
+
}
|
|
248
|
+
if (!this.isCloseBtn) {
|
|
249
|
+
if (arrowUp && menuItems[this.menuIndex].classList.contains('e-separator')) {
|
|
250
|
+
this.menuIndex--;
|
|
251
|
+
}
|
|
252
|
+
else if (arrowDown && menuItems[this.menuIndex].classList.contains('e-separator')) {
|
|
253
|
+
this.menuIndex++;
|
|
254
|
+
}
|
|
255
|
+
menuItems[this.menuIndex].classList.add('e-focused');
|
|
256
|
+
menuItems[this.menuIndex].focus();
|
|
257
|
+
}
|
|
258
|
+
}
|
|
219
259
|
};
|
|
220
260
|
RibbonBackstage.prototype.updatePopupPositionOnRtl = function (enableRtl) {
|
|
221
261
|
var popupStyle = this.popupHTMLElement.style;
|
|
@@ -370,11 +410,13 @@ var RibbonBackstage = /** @class */ (function (_super) {
|
|
|
370
410
|
var item = menuOptions.items[parseInt(i.toString(), 10)];
|
|
371
411
|
if (item.text === args.item.text) {
|
|
372
412
|
this.contentItem = item;
|
|
413
|
+
this.menuIndex = i;
|
|
373
414
|
break;
|
|
374
415
|
}
|
|
375
416
|
}
|
|
376
417
|
this.createBackStageContent(args.item.id, this.contentItem.content);
|
|
377
|
-
var eventArgs = { cancel: false, target: args.element,
|
|
418
|
+
var eventArgs = { cancel: false, target: args.element,
|
|
419
|
+
item: this.contentItem, isBackButton: this.isBackButtonClicked };
|
|
378
420
|
if (this.contentItem.backStageItemClick) {
|
|
379
421
|
this.contentItem.backStageItemClick.call(this, eventArgs);
|
|
380
422
|
}
|
|
@@ -394,8 +436,9 @@ var RibbonBackstage = /** @class */ (function (_super) {
|
|
|
394
436
|
this.backstageButton.setProperties(commonProp);
|
|
395
437
|
if (this.popupEle) {
|
|
396
438
|
this.popupEle.setProperties(commonProp);
|
|
397
|
-
if (this.popupHTMLElement)
|
|
439
|
+
if (this.popupHTMLElement) {
|
|
398
440
|
this.updatePopupPositionOnRtl(commonProp.enableRtl);
|
|
441
|
+
}
|
|
399
442
|
if (this.menuCtrl) {
|
|
400
443
|
this.menuCtrl.setProperties(commonProp);
|
|
401
444
|
if (this.closeBtn) {
|
|
@@ -428,7 +471,7 @@ var RibbonBackstage = /** @class */ (function (_super) {
|
|
|
428
471
|
this.popupEle.setProperties({
|
|
429
472
|
height: backStageOptions.height,
|
|
430
473
|
width: backStageOptions.width,
|
|
431
|
-
target: backStageOptions.target || this.parent.element
|
|
474
|
+
target: backStageOptions.target || this.parent.element
|
|
432
475
|
});
|
|
433
476
|
}
|
|
434
477
|
if (backStageOptions.template) {
|
|
@@ -537,10 +580,20 @@ var RibbonBackstage = /** @class */ (function (_super) {
|
|
|
537
580
|
for (var i = 0; i < items.length; i++) {
|
|
538
581
|
var item = items[parseInt(i.toString(), 10)];
|
|
539
582
|
if (item.isFooter) {
|
|
540
|
-
|
|
583
|
+
if (isAfter) {
|
|
584
|
+
this.footerMenuCtrl.insertAfter(items, target, isUniqueId);
|
|
585
|
+
}
|
|
586
|
+
else {
|
|
587
|
+
this.footerMenuCtrl.insertBefore(items, target, isUniqueId);
|
|
588
|
+
}
|
|
541
589
|
}
|
|
542
590
|
else {
|
|
543
|
-
|
|
591
|
+
if (isAfter) {
|
|
592
|
+
this.menuCtrl.insertAfter(items, target, isUniqueId);
|
|
593
|
+
}
|
|
594
|
+
else {
|
|
595
|
+
this.menuCtrl.insertBefore(items, target, isUniqueId);
|
|
596
|
+
}
|
|
544
597
|
}
|
|
545
598
|
}
|
|
546
599
|
var backstageItems = [].concat(this.menuCtrl.items, this.footerMenuCtrl.items);
|
|
@@ -76,11 +76,14 @@ var RibbonContextualTab = /** @class */ (function () {
|
|
|
76
76
|
if (newProp.tabs) {
|
|
77
77
|
var _loop_1 = function (key) {
|
|
78
78
|
var index = parseInt(key, 10);
|
|
79
|
-
var tab = this_1.parent.tabs.filter(function (e) {
|
|
79
|
+
var tab = this_1.parent.tabs.filter(function (e) {
|
|
80
|
+
return e.id === contextualTab.tabs[parseInt(index.toString(), 10)].id;
|
|
81
|
+
})[0];
|
|
80
82
|
this_1.parent.updateTab(tab);
|
|
81
83
|
};
|
|
82
84
|
var this_1 = this;
|
|
83
|
-
for (var
|
|
85
|
+
for (var _i = 0, _a = Object.keys(newProp.tabs); _i < _a.length; _i++) {
|
|
86
|
+
var key = _a[_i];
|
|
84
87
|
_loop_1(key);
|
|
85
88
|
}
|
|
86
89
|
}
|
|
@@ -31,8 +31,7 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
31
31
|
if (key === 'tab') {
|
|
32
32
|
for (var i = 0; i < this.parent.tabs.length; i++) {
|
|
33
33
|
if (this.parent.keyTipElements[parseInt(i.toString(), 10)]) {
|
|
34
|
-
|
|
35
|
-
keytipData = this.parent.keyTipElements[i][key];
|
|
34
|
+
keytipData = this.parent.keyTipElements[parseInt(i.toString(), 10)]["" + key];
|
|
36
35
|
this.createKeyTipElement((keytipData[0].id), keytipData[0].keyTip, 'tab', 'center', 'bottom', true);
|
|
37
36
|
}
|
|
38
37
|
}
|
|
@@ -115,15 +114,12 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
115
114
|
if (isMethod === void 0) { isMethod = false; }
|
|
116
115
|
var xOffset;
|
|
117
116
|
var yOffset;
|
|
118
|
-
var keytipData;
|
|
119
|
-
/* eslint-disable */
|
|
120
|
-
keytipData = this.parent.keyTipElements[parseInt(this.parent.selectedTab.toString(), 10)][key];
|
|
117
|
+
var keytipData = this.parent.keyTipElements[parseInt(this.parent.selectedTab.toString(), 10)]["" + key];
|
|
121
118
|
if (keytipData) {
|
|
122
|
-
for (var i = 0; i < Object.keys(this.parent.keyTipElements[parseInt(this.parent.selectedTab.toString(), 10)][key]).length; i++) {
|
|
123
|
-
/* eslint-enable */
|
|
119
|
+
for (var i = 0; i < Object.keys(this.parent.keyTipElements[parseInt(this.parent.selectedTab.toString(), 10)]["" + key]).length; i++) {
|
|
124
120
|
if ((isMethod && (keytipData[parseInt(i.toString(), 10)].keyTip === keyTip)) || !isMethod) {
|
|
125
121
|
var itemID = keytipData[parseInt(i.toString(), 10)].id;
|
|
126
|
-
if (keytipData[parseInt(i.toString(), 10)].id.
|
|
122
|
+
if (keytipData[parseInt(i.toString(), 10)].id.indexOf('_grpbtn') !== -1) {
|
|
127
123
|
itemID = keytipData[parseInt(i.toString(), 10)].id.replace(/_grpbtn\d+/, '');
|
|
128
124
|
}
|
|
129
125
|
var itemProp = getItem(this.parent.tabs, itemID);
|
|
@@ -151,7 +147,12 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
151
147
|
yOffset = 'bottom';
|
|
152
148
|
}
|
|
153
149
|
}
|
|
154
|
-
key === 'item'
|
|
150
|
+
if (key === 'item') {
|
|
151
|
+
this.createKeyTipElement((keytipData[parseInt(i.toString(), 10)].id), keytipData[parseInt(i.toString(), 10)].keyTip, key, xOffset, yOffset);
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
this.createKeyTipElement((keytipData[parseInt(i.toString(), 10)].id), keytipData[parseInt(i.toString(), 10)].keyTip, key, xOffset, yOffset, false, true);
|
|
155
|
+
}
|
|
155
156
|
}
|
|
156
157
|
}
|
|
157
158
|
}
|
|
@@ -201,13 +202,12 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
201
202
|
enableRtl: this.parent.enableRtl
|
|
202
203
|
});
|
|
203
204
|
keytipPopup.show();
|
|
204
|
-
this.calculateKeyTipPosition(keyEle, keytipElement, type, yOffset
|
|
205
|
+
this.calculateKeyTipPosition(keyEle, keytipElement, type, yOffset);
|
|
205
206
|
this.parent.isKeytipOpen = true;
|
|
206
207
|
}
|
|
207
208
|
}
|
|
208
209
|
};
|
|
209
|
-
RibbonKeyTip.prototype.calculateKeyTipPosition = function (itemEle, keytipElement, type, yOffset
|
|
210
|
-
if (isTabOverflow === void 0) { isTabOverflow = false; }
|
|
210
|
+
RibbonKeyTip.prototype.calculateKeyTipPosition = function (itemEle, keytipElement, type, yOffset) {
|
|
211
211
|
var position = itemEle.getBoundingClientRect();
|
|
212
212
|
if (type === 'backstageMenu') {
|
|
213
213
|
keytipElement.style.top = position.top + ((keytipElement.offsetHeight) / 2) + 'px';
|
|
@@ -229,6 +229,7 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
229
229
|
* Performs keytip action.
|
|
230
230
|
*
|
|
231
231
|
* @param {string} keyPress - Gets the keytip text.
|
|
232
|
+
* @param {boolean} isMethod - Gets the isMethod.
|
|
232
233
|
* @returns {void}
|
|
233
234
|
* @hidden
|
|
234
235
|
*/
|
|
@@ -238,9 +239,11 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
238
239
|
this.isKeytipPresent = false;
|
|
239
240
|
for (var i = 0; ((i < Object.keys(this.parent.keyTipElements).length) && !this.isKeytipPresent); i++) {
|
|
240
241
|
if (this.parent.keyTipElements[parseInt(i.toString(), 10)]) {
|
|
241
|
-
for (var j = 0; ((j < Object.keys(this.parent.keyTipElements[parseInt(i.toString(), 10)]).length) &&
|
|
242
|
-
|
|
243
|
-
|
|
242
|
+
for (var j = 0; ((j < Object.keys(this.parent.keyTipElements[parseInt(i.toString(), 10)]).length) &&
|
|
243
|
+
!this.isKeytipPresent); j++) {
|
|
244
|
+
var keytipData = this.parent.keyTipElements[parseInt(i.toString(), 10)][Object.
|
|
245
|
+
keys(this.parent.keyTipElements[parseInt(i.toString(), 10)])[parseInt(j.toString(), 10)]];
|
|
246
|
+
for (var k = 0; ((k < Object.keys(keytipData).length) && !this.isKeytipPresent); k++) {
|
|
244
247
|
if (keyPress.toUpperCase() === keytipData[parseInt(k.toString(), 10)].keyTip) {
|
|
245
248
|
var keyTipElement = document.querySelector('#' + keytipData[parseInt(k.toString(), 10)].id + constants.RIBBON_KEYTIP_ID);
|
|
246
249
|
if (keyTipElement || isMethod) {
|
|
@@ -251,8 +254,9 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
251
254
|
this.parent.tabObj.select(i);
|
|
252
255
|
setTimeout(function () {
|
|
253
256
|
var tabOverflow = _this.parent.tabObj.element.querySelector('.e-nav-active');
|
|
254
|
-
if (tabOverflow)
|
|
257
|
+
if (tabOverflow) {
|
|
255
258
|
tabOverflow.click();
|
|
259
|
+
}
|
|
256
260
|
_this.createKeytip('item');
|
|
257
261
|
}, 600);
|
|
258
262
|
}
|
|
@@ -267,7 +271,7 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
267
271
|
}
|
|
268
272
|
else {
|
|
269
273
|
var itemProp = void 0;
|
|
270
|
-
if ((keytipData[parseInt(k.toString(), 10)].id).
|
|
274
|
+
if ((keytipData[parseInt(k.toString(), 10)].id).indexOf('_popupButton') !== -1) {
|
|
271
275
|
var galleryID = keytipData[parseInt(k.toString(), 10)].id.replace(/_popupButton/g, '');
|
|
272
276
|
itemProp = getItem(this.parent.tabs, galleryID);
|
|
273
277
|
}
|
|
@@ -285,7 +289,7 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
285
289
|
if (keyEle) {
|
|
286
290
|
var groupID = keytipData[parseInt(k.toString(), 10)].id;
|
|
287
291
|
if (isMethod) {
|
|
288
|
-
if (keytipData[parseInt(k.toString(), 10)].id.
|
|
292
|
+
if (keytipData[parseInt(k.toString(), 10)].id.indexOf('_launcher') !== -1 || keytipData[parseInt(k.toString(), 10)].id.indexOf('_sim_grp_overflow') !== -1 || keytipData[parseInt(k.toString(), 10)].id.indexOf('_overflow_dropdown') !== -1) {
|
|
289
293
|
groupID = keytipData[parseInt(k.toString(), 10)].id.replace(/_launcher|_sim_grp_overflow|_overflow_dropdown/g, '');
|
|
290
294
|
var itemProp = getGroup(this.parent.tabs, groupID);
|
|
291
295
|
if (itemProp.tabIndex === this.parent.selectedTab) {
|
|
@@ -316,7 +320,12 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
316
320
|
keyEle.click();
|
|
317
321
|
if (!(keytipData[parseInt(k.toString(), 10)].type === 'launcher')) {
|
|
318
322
|
this.isKeytipPopupOpen = true;
|
|
319
|
-
keytipData[parseInt(k.toString(), 10)].type === 'grpoverflow'
|
|
323
|
+
if (keytipData[parseInt(k.toString(), 10)].type === 'grpoverflow') {
|
|
324
|
+
this.createKeytip('grpoverflowpopup');
|
|
325
|
+
}
|
|
326
|
+
else {
|
|
327
|
+
this.createKeytip('popupitem');
|
|
328
|
+
}
|
|
320
329
|
}
|
|
321
330
|
}
|
|
322
331
|
else {
|
|
@@ -353,21 +362,24 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
353
362
|
case 'colorpicker':
|
|
354
363
|
this.parent.ribbonColorPickerModule.toggle(itemID);
|
|
355
364
|
break;
|
|
356
|
-
case 'combobox':
|
|
365
|
+
case 'combobox': {
|
|
357
366
|
var itemEle_1 = document.querySelector('#' + itemID);
|
|
358
367
|
setTimeout(function () {
|
|
359
368
|
itemEle_1.focus();
|
|
360
369
|
}, 100);
|
|
361
370
|
break;
|
|
362
|
-
|
|
371
|
+
}
|
|
372
|
+
case 'gallery': {
|
|
363
373
|
var galleryEle = document.querySelector('#' + itemID);
|
|
364
374
|
galleryEle.click();
|
|
365
375
|
break;
|
|
366
|
-
|
|
376
|
+
}
|
|
377
|
+
case 'template': {
|
|
367
378
|
var templateEle = document.querySelector('#' + itemID);
|
|
368
379
|
templateEle.focus();
|
|
369
380
|
break;
|
|
370
|
-
|
|
381
|
+
}
|
|
382
|
+
case 'group-btn': {
|
|
371
383
|
var itemElement = document.querySelector('#' + itemID);
|
|
372
384
|
if (itemElement) {
|
|
373
385
|
var item = getInstance(itemElement, DropDownButton);
|
|
@@ -379,21 +391,20 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
379
391
|
}
|
|
380
392
|
}
|
|
381
393
|
break;
|
|
394
|
+
}
|
|
382
395
|
}
|
|
383
396
|
}
|
|
384
397
|
};
|
|
385
398
|
RibbonKeyTip.prototype.commonItemsKeyTipPress = function (keyPress, key, isMethod) {
|
|
386
399
|
var _this = this;
|
|
387
|
-
|
|
388
|
-
if (this.parent.keyTipElements[key]) {
|
|
400
|
+
if (this.parent.keyTipElements["" + key]) {
|
|
389
401
|
var isKeyPressed = false;
|
|
390
|
-
var keytipData = this.parent.keyTipElements[key];
|
|
402
|
+
var keytipData = this.parent.keyTipElements["" + key];
|
|
391
403
|
var keyEle = void 0;
|
|
392
404
|
var keytipElement = void 0;
|
|
393
405
|
if (keytipData) {
|
|
394
406
|
if (key === 'backstageMenu') {
|
|
395
|
-
for (var i = 0; i < Object.keys(this.parent.keyTipElements[key]).length; i++) {
|
|
396
|
-
/* eslint-enable */
|
|
407
|
+
for (var i = 0; i < Object.keys(this.parent.keyTipElements["" + key]).length; i++) {
|
|
397
408
|
if (keytipData[parseInt(i.toString(), 10)].keyTip === keyPress.toUpperCase()) {
|
|
398
409
|
keyEle = document.querySelector('#' + keytipData[parseInt(i.toString(), 10)].id);
|
|
399
410
|
keytipElement = document.querySelector('#' + keyEle.id + constants.RIBBON_KEYTIP_ID);
|
|
@@ -458,34 +469,34 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
458
469
|
var _loop_1 = function (i) {
|
|
459
470
|
var keyTipItem = keyTipItems[parseInt(i.toString(), 10)];
|
|
460
471
|
if (key === 'Escape' && this_1.parent.keyTipElements && this_1.parent.keyTipElements[this_1.parent.selectedTab]) {
|
|
461
|
-
/* eslint-disable */
|
|
462
472
|
for (var j = 0; j < Object.keys(this_1.parent.keyTipElements[this_1.parent.selectedTab]).length; j++) {
|
|
463
|
-
var keyText = (Object.keys(this_1.parent.keyTipElements[this_1.parent.selectedTab]))[j];
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
473
|
+
var keyText = (Object.keys(this_1.parent.keyTipElements[parseInt(this_1.parent.selectedTab.toString(), 10)]))[parseInt(j.toString(), 10)];
|
|
474
|
+
var keyTipElement = this_1.parent.keyTipElements[parseInt(this_1.parent.selectedTab.toString(), 10)];
|
|
475
|
+
var index = getIndex(keyTipElement["" + keyText], function (e) {
|
|
476
|
+
return e.id +
|
|
477
|
+
constants.RIBBON_KEYTIP_ID === keyTipItems[parseInt(i.toString(), 10)].id;
|
|
478
|
+
});
|
|
479
|
+
if (index !== -1) {
|
|
480
|
+
if ((keyText === 'item' && !(this_1.isKeytipPopupOpen)) || (keyText === 'grpoverflow' && this_1.parent.activeLayout === 'Classic')) {
|
|
481
|
+
this_1.createKeytip('tab');
|
|
482
|
+
key = '';
|
|
483
|
+
isKeyTipExist = true;
|
|
484
|
+
break;
|
|
485
|
+
}
|
|
486
|
+
else if (this_1.isKeytipPopupOpen) {
|
|
487
|
+
if ((keyText === 'popupitem' && this_1.parent.activeLayout === 'Simplified') || (keyText === 'grpoverflowpopup' && this_1.parent.activeLayout === 'Classic')) {
|
|
488
|
+
this_1.createKeytip('item');
|
|
470
489
|
key = '';
|
|
471
490
|
isKeyTipExist = true;
|
|
472
491
|
break;
|
|
473
492
|
}
|
|
474
|
-
else if (this_1.isKeytipPopupOpen) {
|
|
475
|
-
if ((keyText === 'popupitem' && this_1.parent.activeLayout === 'Simplified') || (keyText === 'grpoverflowpopup' && this_1.parent.activeLayout === 'Classic')) {
|
|
476
|
-
this_1.createKeytip('item');
|
|
477
|
-
key = '';
|
|
478
|
-
isKeyTipExist = true;
|
|
479
|
-
break;
|
|
480
|
-
}
|
|
481
|
-
}
|
|
482
493
|
}
|
|
483
494
|
}
|
|
484
495
|
}
|
|
485
496
|
for (var n = 0; n < Object.keys(this_1.parent.keyTipElements).length; n++) {
|
|
486
497
|
if (this_1.parent.keyTipElements[parseInt(n.toString(), 10)]) {
|
|
487
498
|
var keytipData = this_1.parent.keyTipElements[parseInt(n.toString(), 10)]['tab'];
|
|
488
|
-
for (var j = 0; j < keytipData.length; j++) {
|
|
499
|
+
for (var j = 0; j < Object.keys(keytipData).length; j++) {
|
|
489
500
|
if (keyTipItem.id === keytipData[0].id + constants.RIBBON_KEYTIP_ID) {
|
|
490
501
|
if (document.querySelector('#' + keytipData[0].id + constants.HEADER_ID).closest('.e-toolbar-pop')) {
|
|
491
502
|
var tabOverflow = this_1.parent.tabObj.element.querySelector('.e-nav-active');
|
|
@@ -522,8 +533,9 @@ var RibbonKeyTip = /** @class */ (function () {
|
|
|
522
533
|
_loop_1(i);
|
|
523
534
|
}
|
|
524
535
|
this.isKeytipPopupOpen = false;
|
|
525
|
-
if (!isKeyTipExist)
|
|
536
|
+
if (!isKeyTipExist) {
|
|
526
537
|
this.parent.isKeytipOpen = false;
|
|
538
|
+
}
|
|
527
539
|
};
|
|
528
540
|
/**
|
|
529
541
|
* Shows the Keytip dynamically.
|