@syncfusion/ej2-ribbon 23.2.7 → 24.1.41
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/CHANGELOG.md +0 -42
- 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 +179 -30
- package/dist/es6/ej2-ribbon.es2015.js.map +1 -1
- package/dist/es6/ej2-ribbon.es5.js +179 -30
- 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/ribbon.d.ts +1 -0
- package/src/ribbon/base/ribbon.js +76 -19
- package/src/ribbon/items/ribbon-colorpicker.js +16 -0
- package/src/ribbon/items/ribbon-combobox.js +16 -0
- package/src/ribbon/items/ribbon-dropdown.js +5 -3
- package/src/ribbon/items/ribbon-groupbutton.d.ts +3 -1
- package/src/ribbon/items/ribbon-groupbutton.js +50 -7
- package/src/ribbon/models/ribbon-colorpicker-settings-model.d.ts +8 -1
- package/src/ribbon/models/ribbon-colorpicker-settings.d.ts +7 -1
- package/src/ribbon/models/ribbon-colorpicker-settings.js +4 -1
- package/src/ribbon/models/ribbon-combobox-settings-model.d.ts +7 -0
- package/src/ribbon/models/ribbon-combobox-settings.d.ts +6 -0
- package/src/ribbon/models/ribbon-combobox-settings.js +3 -0
- package/src/ribbon/models/ribbon-group-button-settings-model.d.ts +7 -0
- package/src/ribbon/models/ribbon-group-button-settings.d.ts +6 -0
- package/src/ribbon/models/ribbon-group-button-settings.js +3 -0
- package/src/ribbon/models/ribbon-group-model.d.ts +7 -0
- package/src/ribbon/models/ribbon-group.d.ts +6 -0
- package/src/ribbon/models/ribbon-group.js +3 -0
- package/src/ribbon/modules/ribbon-backstage.js +3 -0
- package/styles/bootstrap-dark.css +105 -26
- package/styles/bootstrap.css +104 -25
- package/styles/bootstrap4.css +104 -25
- package/styles/bootstrap5-dark.css +105 -26
- package/styles/bootstrap5.css +104 -25
- package/styles/fabric-dark.css +103 -24
- package/styles/fabric.css +104 -25
- package/styles/fluent-dark.css +104 -25
- package/styles/fluent.css +104 -25
- package/styles/highcontrast-light.css +103 -24
- package/styles/highcontrast.css +103 -24
- package/styles/material-dark.css +105 -26
- package/styles/material.css +105 -26
- package/styles/material3-dark.css +105 -26
- package/styles/material3.css +105 -26
- package/styles/ribbon/_bootstrap-dark-definition.scss +8 -0
- package/styles/ribbon/_bootstrap-definition.scss +8 -0
- package/styles/ribbon/_bootstrap4-definition.scss +8 -0
- package/styles/ribbon/_bootstrap5-definition.scss +8 -0
- package/styles/ribbon/_fabric-dark-definition.scss +8 -0
- package/styles/ribbon/_fabric-definition.scss +8 -0
- package/styles/ribbon/_fluent-definition.scss +8 -0
- package/styles/ribbon/_fusionnew-definition.scss +8 -0
- package/styles/ribbon/_highcontrast-definition.scss +8 -0
- package/styles/ribbon/_highcontrast-light-definition.scss +8 -0
- package/styles/ribbon/_layout.scss +69 -5
- package/styles/ribbon/_material-dark-definition.scss +9 -1
- package/styles/ribbon/_material-definition.scss +9 -1
- package/styles/ribbon/_material3-definition.scss +8 -2
- package/styles/ribbon/_tailwind-definition.scss +8 -0
- package/styles/ribbon/_theme.scss +34 -13
- package/styles/ribbon/bootstrap-dark.css +105 -26
- package/styles/ribbon/bootstrap.css +104 -25
- package/styles/ribbon/bootstrap4.css +104 -25
- package/styles/ribbon/bootstrap5-dark.css +105 -26
- package/styles/ribbon/bootstrap5.css +104 -25
- package/styles/ribbon/fabric-dark.css +103 -24
- package/styles/ribbon/fabric.css +104 -25
- package/styles/ribbon/fluent-dark.css +104 -25
- package/styles/ribbon/fluent.css +104 -25
- package/styles/ribbon/highcontrast-light.css +103 -24
- package/styles/ribbon/highcontrast.css +103 -24
- package/styles/ribbon/material-dark.css +105 -26
- package/styles/ribbon/material.css +105 -26
- package/styles/ribbon/material3-dark.css +105 -26
- package/styles/ribbon/material3.css +105 -26
- package/styles/ribbon/tailwind-dark.css +104 -25
- package/styles/ribbon/tailwind.css +104 -25
- package/styles/tailwind-dark.css +104 -25
- package/styles/tailwind.css +104 -25
|
@@ -296,11 +296,14 @@ var RibbonColorPickerSettings = /** @__PURE__ @class */ (function (_super) {
|
|
|
296
296
|
__decorate$7([
|
|
297
297
|
Property('')
|
|
298
298
|
], RibbonColorPickerSettings.prototype, "cssClass", void 0);
|
|
299
|
+
__decorate$7([
|
|
300
|
+
Property('')
|
|
301
|
+
], RibbonColorPickerSettings.prototype, "label", void 0);
|
|
299
302
|
__decorate$7([
|
|
300
303
|
Property(true)
|
|
301
304
|
], RibbonColorPickerSettings.prototype, "enableOpacity", void 0);
|
|
302
305
|
__decorate$7([
|
|
303
|
-
Property('
|
|
306
|
+
Property('Palette')
|
|
304
307
|
], RibbonColorPickerSettings.prototype, "mode", void 0);
|
|
305
308
|
__decorate$7([
|
|
306
309
|
Property(true)
|
|
@@ -389,6 +392,9 @@ var RibbonComboBoxSettings = /** @__PURE__ @class */ (function (_super) {
|
|
|
389
392
|
__decorate$8([
|
|
390
393
|
Property('')
|
|
391
394
|
], RibbonComboBoxSettings.prototype, "cssClass", void 0);
|
|
395
|
+
__decorate$8([
|
|
396
|
+
Property('')
|
|
397
|
+
], RibbonComboBoxSettings.prototype, "label", void 0);
|
|
392
398
|
__decorate$8([
|
|
393
399
|
Property([])
|
|
394
400
|
], RibbonComboBoxSettings.prototype, "dataSource", void 0);
|
|
@@ -758,6 +764,9 @@ var RibbonGroupButtonSettings = /** @__PURE__ @class */ (function (_super) {
|
|
|
758
764
|
function RibbonGroupButtonSettings() {
|
|
759
765
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
760
766
|
}
|
|
767
|
+
__decorate$12([
|
|
768
|
+
Property('')
|
|
769
|
+
], RibbonGroupButtonSettings.prototype, "header", void 0);
|
|
761
770
|
__decorate$12([
|
|
762
771
|
Property('Single')
|
|
763
772
|
], RibbonGroupButtonSettings.prototype, "selection", void 0);
|
|
@@ -965,6 +974,9 @@ var RibbonGroup = /** @__PURE__ @class */ (function (_super) {
|
|
|
965
974
|
__decorate$2([
|
|
966
975
|
Property('Column')
|
|
967
976
|
], RibbonGroup.prototype, "orientation", void 0);
|
|
977
|
+
__decorate$2([
|
|
978
|
+
Property('')
|
|
979
|
+
], RibbonGroup.prototype, "overflowHeader", void 0);
|
|
968
980
|
__decorate$2([
|
|
969
981
|
Property(0)
|
|
970
982
|
], RibbonGroup.prototype, "priority", void 0);
|
|
@@ -1833,6 +1845,15 @@ var RibbonColorPicker = /** @__PURE__ @class */ (function () {
|
|
|
1833
1845
|
*/
|
|
1834
1846
|
RibbonColorPicker.prototype.addOverFlowEvents = function (item, itemEle, overflowButton) {
|
|
1835
1847
|
var _this = this;
|
|
1848
|
+
var colorPickerSettings = item.colorPickerSettings;
|
|
1849
|
+
if (colorPickerSettings.label && this.parent.activeLayout === 'Simplified') {
|
|
1850
|
+
var label = this.parent.createElement('div', {
|
|
1851
|
+
className: 'e-ribbon-colorpicker-label',
|
|
1852
|
+
id: item.id + '_label',
|
|
1853
|
+
innerHTML: colorPickerSettings.label
|
|
1854
|
+
});
|
|
1855
|
+
itemEle.insertBefore(label, itemEle.firstChild);
|
|
1856
|
+
}
|
|
1836
1857
|
var colorPickerEle = itemEle.querySelector('#' + item.id);
|
|
1837
1858
|
colorPickerEle.setAttribute('data-control', item.type.toString());
|
|
1838
1859
|
var colorPickerObj = getComponent(colorPickerEle, ColorPicker);
|
|
@@ -1863,6 +1884,13 @@ var RibbonColorPicker = /** @__PURE__ @class */ (function () {
|
|
|
1863
1884
|
*/
|
|
1864
1885
|
RibbonColorPicker.prototype.removeOverFlowEvents = function (item, itemEle) {
|
|
1865
1886
|
var _this = this;
|
|
1887
|
+
var colorPickerSettings = item.colorPickerSettings;
|
|
1888
|
+
if (colorPickerSettings.label) {
|
|
1889
|
+
var label = itemEle.querySelector('#' + item.id + '_label');
|
|
1890
|
+
if (label) {
|
|
1891
|
+
label.remove();
|
|
1892
|
+
}
|
|
1893
|
+
}
|
|
1866
1894
|
var colorPickerEle = itemEle.querySelector('#' + item.id);
|
|
1867
1895
|
var colorPickerObj = getComponent(colorPickerEle, ColorPicker);
|
|
1868
1896
|
var cssClass = colorPickerObj.cssClass.split(SPACE);
|
|
@@ -2028,6 +2056,15 @@ var RibbonComboBox = /** @__PURE__ @class */ (function () {
|
|
|
2028
2056
|
*/
|
|
2029
2057
|
RibbonComboBox.prototype.addOverFlowEvents = function (item, itemEle, overflowButton) {
|
|
2030
2058
|
var _this = this;
|
|
2059
|
+
var comboBoxSettings = item.comboBoxSettings;
|
|
2060
|
+
if (comboBoxSettings.label && this.parent.activeLayout === 'Simplified') {
|
|
2061
|
+
var label = this.parent.createElement('div', {
|
|
2062
|
+
className: 'e-ribbon-combobox-label',
|
|
2063
|
+
id: item.id + '_label',
|
|
2064
|
+
innerHTML: comboBoxSettings.label
|
|
2065
|
+
});
|
|
2066
|
+
itemEle.insertBefore(label, itemEle.firstChild);
|
|
2067
|
+
}
|
|
2031
2068
|
var inputEle = itemEle.querySelector('#' + item.id);
|
|
2032
2069
|
inputEle.setAttribute('data-control', item.type.toString());
|
|
2033
2070
|
var comboBoxObj = getComponent(inputEle, ComboBox);
|
|
@@ -2052,6 +2089,13 @@ var RibbonComboBox = /** @__PURE__ @class */ (function () {
|
|
|
2052
2089
|
*/
|
|
2053
2090
|
RibbonComboBox.prototype.removeOverFlowEvents = function (item, itemEle) {
|
|
2054
2091
|
var _this = this;
|
|
2092
|
+
var comboBoxSettings = item.comboBoxSettings;
|
|
2093
|
+
if (comboBoxSettings.label) {
|
|
2094
|
+
var label = itemEle.querySelector('#' + item.id + '_label');
|
|
2095
|
+
if (label) {
|
|
2096
|
+
label.remove();
|
|
2097
|
+
}
|
|
2098
|
+
}
|
|
2055
2099
|
var inputEle = itemEle.querySelector('#' + item.id);
|
|
2056
2100
|
var comboBoxObj = getComponent(inputEle, ComboBox);
|
|
2057
2101
|
var cssClass = comboBoxObj.cssClass.split(SPACE);
|
|
@@ -2293,7 +2337,9 @@ var RibbonDropDown = /** @__PURE__ @class */ (function () {
|
|
|
2293
2337
|
return dropdown;
|
|
2294
2338
|
};
|
|
2295
2339
|
RibbonDropDown.prototype.keyActionHandler = function (e, target) {
|
|
2296
|
-
var
|
|
2340
|
+
var controlElements = Array.prototype.slice.call(target.querySelectorAll('.e-control'));
|
|
2341
|
+
var templateElements = Array.prototype.slice.call(target.querySelectorAll('.e-ribbon-template'));
|
|
2342
|
+
var items = controlElements.concat(templateElements);
|
|
2297
2343
|
var comboBoxElements = target.querySelectorAll('.e-combobox');
|
|
2298
2344
|
var comboBoxEle;
|
|
2299
2345
|
if (comboBoxElements) {
|
|
@@ -2312,7 +2358,7 @@ var RibbonDropDown = /** @__PURE__ @class */ (function () {
|
|
|
2312
2358
|
}
|
|
2313
2359
|
}
|
|
2314
2360
|
}
|
|
2315
|
-
if (e.target.classList.contains('e-control') || e.target.classList.contains('e-ribbon-launcher-icon') ||
|
|
2361
|
+
if (e.target.classList.contains('e-control') || e.target.classList.contains('e-ribbon-template') || e.target.classList.contains('e-ribbon-launcher-icon') ||
|
|
2316
2362
|
e.target.classList.contains('e-ribbon-last-item') || e.target.classList.contains('e-ribbon-first-item')) {
|
|
2317
2363
|
if (e.key === 'ArrowRight' || (!e.shiftKey && e.key === 'Tab')) {
|
|
2318
2364
|
this.handleNavigation(e, !this.enableRtl, items);
|
|
@@ -2335,7 +2381,7 @@ var RibbonDropDown = /** @__PURE__ @class */ (function () {
|
|
|
2335
2381
|
}
|
|
2336
2382
|
if (!e.target.classList.contains('e-combobox') && !e.target.classList.contains('e-ribbon-last-item') &&
|
|
2337
2383
|
!e.target.classList.contains('e-ribbon-group-container') && (e.target.classList.contains('e-ribbon-first-item')
|
|
2338
|
-
|| this.itemIndex !== 0) && e.target.classList.contains('e-control')) {
|
|
2384
|
+
|| this.itemIndex !== 0) && (e.target.classList.contains('e-control') || e.target.classList.contains('e-ribbon-template'))) {
|
|
2339
2385
|
this.itemIndex++;
|
|
2340
2386
|
this.updateItemIndex(e, items, true);
|
|
2341
2387
|
}
|
|
@@ -3275,13 +3321,17 @@ var RibbonGroupButton = /** @__PURE__ @class */ (function () {
|
|
|
3275
3321
|
}
|
|
3276
3322
|
count++;
|
|
3277
3323
|
}
|
|
3278
|
-
new DropDownButton({
|
|
3324
|
+
var dropdown = new DropDownButton({
|
|
3279
3325
|
iconCss: dropdownIcon,
|
|
3280
3326
|
target: btnContainerEle,
|
|
3281
3327
|
enableRtl: this.parent.enableRtl,
|
|
3282
3328
|
cssClass: 'e-ribbon-dropdown-group-button',
|
|
3283
3329
|
disabled: item.disabled
|
|
3284
3330
|
}, buttonEle);
|
|
3331
|
+
if (groupBtnSettings.header) {
|
|
3332
|
+
var dropDownPopup = dropdown.dropDown;
|
|
3333
|
+
this.addGroupButtonHeader(item.id, groupBtnSettings, dropDownPopup.element);
|
|
3334
|
+
}
|
|
3285
3335
|
buttonEle.onclick = buttonEle.onkeydown = function () {
|
|
3286
3336
|
if (itemElement.querySelector('#' + item.id).classList.contains('e-active')) {
|
|
3287
3337
|
document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + 0).focus();
|
|
@@ -3298,7 +3348,9 @@ var RibbonGroupButton = /** @__PURE__ @class */ (function () {
|
|
|
3298
3348
|
}
|
|
3299
3349
|
};
|
|
3300
3350
|
RibbonGroupButton.prototype.groupButtonClicked = function (itemIndex, item, grpBtnSettings) {
|
|
3301
|
-
var previousItems = []
|
|
3351
|
+
var previousItems = [];
|
|
3352
|
+
var selectingItems = [];
|
|
3353
|
+
var selectedItems = [];
|
|
3302
3354
|
var groupButtonEle;
|
|
3303
3355
|
var dropdown;
|
|
3304
3356
|
for (var j = 0; j < grpBtnSettings.items.length; j++) {
|
|
@@ -3329,9 +3381,11 @@ var RibbonGroupButton = /** @__PURE__ @class */ (function () {
|
|
|
3329
3381
|
for (var j = 0; j < grpBtnSettings.items.length; j++) {
|
|
3330
3382
|
if (document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + j) && document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + j).classList.contains('e-active')) {
|
|
3331
3383
|
document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + j).classList.remove('e-active');
|
|
3384
|
+
grpBtnSettings.items[parseInt(j.toString(), 10)].selected = false;
|
|
3332
3385
|
}
|
|
3333
3386
|
}
|
|
3334
3387
|
document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + itemIndex).classList.toggle('e-active');
|
|
3388
|
+
grpBtnSettings.items[parseInt(itemIndex.toString(), 10)].selected = true;
|
|
3335
3389
|
if (document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + itemIndex).classList.contains('e-active') && this.parent.activeLayout === 'Simplified') {
|
|
3336
3390
|
this.grpBtnIndex = itemIndex;
|
|
3337
3391
|
groupButtonEle = document.querySelector('#' + item.id);
|
|
@@ -3347,6 +3401,12 @@ var RibbonGroupButton = /** @__PURE__ @class */ (function () {
|
|
|
3347
3401
|
document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID).classList.add(RIBBON_MULTIPLE_BUTTON_SELECTION);
|
|
3348
3402
|
}
|
|
3349
3403
|
document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + itemIndex).classList.toggle('e-active');
|
|
3404
|
+
if (document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + itemIndex).classList.contains('e-active')) {
|
|
3405
|
+
grpBtnSettings.items[parseInt(itemIndex.toString(), 10)].selected = true;
|
|
3406
|
+
}
|
|
3407
|
+
else {
|
|
3408
|
+
grpBtnSettings.items[parseInt(itemIndex.toString(), 10)].selected = false;
|
|
3409
|
+
}
|
|
3350
3410
|
var activeEleCount = 0;
|
|
3351
3411
|
for (var n = 0; n < grpBtnSettings.items.length; n++) {
|
|
3352
3412
|
if (document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + n) && document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + n).classList.contains('e-active') && this.parent.activeLayout === 'Simplified' && n !== itemIndex) {
|
|
@@ -3435,13 +3495,17 @@ var RibbonGroupButton = /** @__PURE__ @class */ (function () {
|
|
|
3435
3495
|
}
|
|
3436
3496
|
itemsCount++;
|
|
3437
3497
|
}
|
|
3438
|
-
new DropDownButton({
|
|
3498
|
+
var dropdown = new DropDownButton({
|
|
3439
3499
|
iconCss: dropdownIcon,
|
|
3440
3500
|
target: containerEle,
|
|
3441
3501
|
enableRtl: this.parent.enableRtl,
|
|
3442
3502
|
cssClass: 'e-ribbon-dropdown-group-button',
|
|
3443
3503
|
disabled: item.disabled
|
|
3444
3504
|
}, buttonEle);
|
|
3505
|
+
if (groupBtnSettings.header) {
|
|
3506
|
+
var dropDownPopup = dropdown.dropDown;
|
|
3507
|
+
this.addGroupButtonHeader(item.id, groupBtnSettings, dropDownPopup.element);
|
|
3508
|
+
}
|
|
3445
3509
|
buttonEle.onclick = buttonEle.onkeydown = function () {
|
|
3446
3510
|
if (itemElement.querySelector('#' + item.id).classList.contains('e-active')) {
|
|
3447
3511
|
document.querySelector('#' + item.id + RIBBON_GROUP_BUTTON_ID + 0).focus();
|
|
@@ -3465,6 +3529,14 @@ var RibbonGroupButton = /** @__PURE__ @class */ (function () {
|
|
|
3465
3529
|
}
|
|
3466
3530
|
}
|
|
3467
3531
|
};
|
|
3532
|
+
RibbonGroupButton.prototype.addGroupButtonHeader = function (itemID, groupBtnSettings, popupEle) {
|
|
3533
|
+
var groupButtonHeader = this.parent.createElement('div', {
|
|
3534
|
+
className: 'e-ribbon-groupbutton-header',
|
|
3535
|
+
id: itemID + HEADER_ID,
|
|
3536
|
+
innerHTML: groupBtnSettings.header
|
|
3537
|
+
});
|
|
3538
|
+
popupEle.insertBefore(groupButtonHeader, popupEle.firstChild);
|
|
3539
|
+
};
|
|
3468
3540
|
RibbonGroupButton.prototype.handleGroupButtonNavigation = function (e, item) {
|
|
3469
3541
|
var groupButtonEle = document.querySelector('#' + item.id);
|
|
3470
3542
|
var dropdown = getComponent(groupButtonEle, DropDownButton);
|
|
@@ -3530,16 +3602,29 @@ var RibbonGroupButton = /** @__PURE__ @class */ (function () {
|
|
|
3530
3602
|
* @returns {void}
|
|
3531
3603
|
* @hidden
|
|
3532
3604
|
*/
|
|
3533
|
-
RibbonGroupButton.prototype.addOverFlowEvents = function (item, itemEle) {
|
|
3605
|
+
RibbonGroupButton.prototype.addOverFlowEvents = function (item, itemEle, overflowButton) {
|
|
3534
3606
|
var _this = this;
|
|
3607
|
+
var groupBtnSettings = item.groupButtonSettings;
|
|
3608
|
+
var isIconOnly = true;
|
|
3535
3609
|
var groupButtonEle = itemEle.querySelector('#' + item.id);
|
|
3536
3610
|
var dropdown = getComponent(groupButtonEle, DropDownButton);
|
|
3537
|
-
dropdown.setProperties({ cssClass: dropdown.cssClass + SPACE + RIBBON_GROUP_BUTTON_OVERFLOW_POPUP });
|
|
3611
|
+
dropdown.setProperties({ cssClass: dropdown.cssClass + SPACE + RIBBON_GROUP_BUTTON_OVERFLOW_POPUP, content: groupBtnSettings.header ? groupBtnSettings.header : '' });
|
|
3538
3612
|
var targetEle = dropdown.target;
|
|
3613
|
+
if (targetEle.children.length) {
|
|
3614
|
+
for (var i = 0; i < targetEle.children.length; i++) {
|
|
3615
|
+
if (groupBtnSettings.items[parseInt(i.toString(), 10)].content) {
|
|
3616
|
+
isIconOnly = false;
|
|
3617
|
+
break;
|
|
3618
|
+
}
|
|
3619
|
+
}
|
|
3620
|
+
if (isIconOnly) {
|
|
3621
|
+
targetEle.classList.add('e-icon-btn');
|
|
3622
|
+
}
|
|
3623
|
+
}
|
|
3539
3624
|
targetEle.onclick = function () {
|
|
3540
3625
|
if (_this.parent.activeLayout === 'Simplified' && targetEle.closest('.e-ribbon-dropdown-group-button').classList.contains(RIBBON_GROUP_BUTTON_OVERFLOW_POPUP)) {
|
|
3541
|
-
dropdown.element.focus();
|
|
3542
3626
|
dropdown.toggle();
|
|
3627
|
+
overflowButton.toggle();
|
|
3543
3628
|
}
|
|
3544
3629
|
};
|
|
3545
3630
|
};
|
|
@@ -3555,9 +3640,13 @@ var RibbonGroupButton = /** @__PURE__ @class */ (function () {
|
|
|
3555
3640
|
var groupButtonEle = itemEle.querySelector('#' + item.id);
|
|
3556
3641
|
if (groupButtonEle) {
|
|
3557
3642
|
var dropdown = getComponent(groupButtonEle, DropDownButton);
|
|
3643
|
+
var targetEle = dropdown.target;
|
|
3644
|
+
if (targetEle.classList.contains('e-icon-btn')) {
|
|
3645
|
+
targetEle.classList.remove('e-icon-btn');
|
|
3646
|
+
}
|
|
3558
3647
|
var cssClass = dropdown.cssClass.split(SPACE);
|
|
3559
3648
|
cssClass = cssClass.filter(function (value) { return value !== RIBBON_GROUP_BUTTON_OVERFLOW_POPUP; });
|
|
3560
|
-
dropdown.setProperties({ cssClass: cssClass.join(SPACE) });
|
|
3649
|
+
dropdown.setProperties({ cssClass: cssClass.join(SPACE), content: '' });
|
|
3561
3650
|
}
|
|
3562
3651
|
};
|
|
3563
3652
|
/**
|
|
@@ -3730,7 +3819,9 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
3730
3819
|
e.preventDefault();
|
|
3731
3820
|
}
|
|
3732
3821
|
var activeContent = this.tabObj.element.querySelector('#' + this.tabs[this.selectedTab].id + CONTENT_ID);
|
|
3733
|
-
var
|
|
3822
|
+
var controlElements = Array.prototype.slice.call(activeContent.querySelectorAll('.e-control'));
|
|
3823
|
+
var templateElements = Array.prototype.slice.call(activeContent.querySelectorAll('.e-ribbon-template'));
|
|
3824
|
+
var ribbonControls = controlElements.concat(templateElements);
|
|
3734
3825
|
var comboBoxElements = activeContent.querySelectorAll('.e-combobox');
|
|
3735
3826
|
var comboBoxEle;
|
|
3736
3827
|
if (comboBoxElements) {
|
|
@@ -3759,7 +3850,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
3759
3850
|
if (e.target.classList.contains('e-control') || e.target.classList.contains('e-ribbon-launcher-icon') ||
|
|
3760
3851
|
e.target.classList.contains('e-ribbon-collapse-btn') || e.target.classList.contains('e-ribbon-last-item') ||
|
|
3761
3852
|
e.target.classList.contains('e-ribbon-first-item') || e.target.classList.contains('e-ribbon-group-of-btn') ||
|
|
3762
|
-
e.target.classList.contains('e-ribbon-overall-of-btn')) {
|
|
3853
|
+
e.target.classList.contains('e-ribbon-overall-of-btn') || e.target.classList.contains('e-ribbon-template')) {
|
|
3763
3854
|
switch (e.action) {
|
|
3764
3855
|
case 'rightarrow':
|
|
3765
3856
|
this.handleNavigation(e, !this.enableRtl, ribbonControls);
|
|
@@ -3801,7 +3892,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
3801
3892
|
}
|
|
3802
3893
|
}
|
|
3803
3894
|
if ((!enableRtl && (this.currentControlIndex > 0)) || (enableRtl && (this.currentControlIndex < ribbonControls.length - 1))) {
|
|
3804
|
-
if (!e.target.classList.contains('e-combobox') && e.target.classList.contains('e-control') && !e.target.classList.contains('e-ribbon-last-item')) {
|
|
3895
|
+
if (!e.target.classList.contains('e-combobox') && (e.target.classList.contains('e-control') || e.target.classList.contains('e-ribbon-template')) && !e.target.classList.contains('e-ribbon-last-item')) {
|
|
3805
3896
|
if (enableRtl) {
|
|
3806
3897
|
this.currentControlIndex++;
|
|
3807
3898
|
}
|
|
@@ -3835,7 +3926,10 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
3835
3926
|
}
|
|
3836
3927
|
if (launcherIconEle) {
|
|
3837
3928
|
var items = groupContainer.querySelectorAll('.e-ribbon-item');
|
|
3838
|
-
items[items.length - 1].querySelector('.e-control')
|
|
3929
|
+
var elem = items[items.length - 1].querySelector('.e-control');
|
|
3930
|
+
if (elem) {
|
|
3931
|
+
elem.classList.add('e-ribbon-last-item');
|
|
3932
|
+
}
|
|
3839
3933
|
}
|
|
3840
3934
|
}
|
|
3841
3935
|
else {
|
|
@@ -3948,6 +4042,15 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
3948
4042
|
var scrollEle = this.tabObj.element.querySelector('.' + HORIZONTAL_SCROLLBAR);
|
|
3949
4043
|
this.scrollModule.scrollStep = scrollEle.offsetWidth;
|
|
3950
4044
|
}
|
|
4045
|
+
if (this.activeLayout === 'Simplified') {
|
|
4046
|
+
var activePopup = document.querySelectorAll('.e-ribbon .e-dropdown-btn.e-active, .e-ribbon-group-overflow-ddb .e-dropdown-btn.e-active');
|
|
4047
|
+
if (activePopup.length) {
|
|
4048
|
+
for (var i = 0; i < activePopup.length; i++) {
|
|
4049
|
+
var dropDownBtn = getInstance(activePopup[parseInt(i.toString(), 10)], DropDownButton);
|
|
4050
|
+
dropDownBtn.toggle();
|
|
4051
|
+
}
|
|
4052
|
+
}
|
|
4053
|
+
}
|
|
3951
4054
|
};
|
|
3952
4055
|
Ribbon.prototype.renderTabs = function () {
|
|
3953
4056
|
this.tabsInternal = this.tabs.slice();
|
|
@@ -4273,7 +4376,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
4273
4376
|
}
|
|
4274
4377
|
if (overflowDDB) {
|
|
4275
4378
|
if (group.enableGroupOverflow) {
|
|
4276
|
-
if (overflowtarget.childElementCount === 0) {
|
|
4379
|
+
if (overflowtarget.childElementCount === 0 || (overflowtarget.childElementCount === 1 && this.isHeaderVisible(overflowtarget, group.id))) {
|
|
4277
4380
|
this.removeOverflowButton(overflowDDB);
|
|
4278
4381
|
}
|
|
4279
4382
|
}
|
|
@@ -4345,6 +4448,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
4345
4448
|
};
|
|
4346
4449
|
Ribbon.prototype.createOverflowPopup = function (item, tabIndex, isGroupOF, groupId, groupHeader, itemEle, groupContainer, isResize) {
|
|
4347
4450
|
var overflowButton;
|
|
4451
|
+
var itemProp = getGroup(this.tabs, groupId);
|
|
4348
4452
|
var contentEle = this.tabObj.items[parseInt(tabIndex.toString(), 10)].content;
|
|
4349
4453
|
var groupEle = contentEle.querySelector('#' + groupId);
|
|
4350
4454
|
if (isGroupOF) {
|
|
@@ -4358,6 +4462,17 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
4358
4462
|
overflowButton = getInstance(overflowDDB, DropDownButton);
|
|
4359
4463
|
}
|
|
4360
4464
|
var overflowBtnTarget = overflowButton.target;
|
|
4465
|
+
var headerEle = overflowBtnTarget.querySelector('#' + groupId + GROUPOF_BUTTON_ID + HEADER_ID);
|
|
4466
|
+
if (!headerEle) {
|
|
4467
|
+
if (itemProp.group.overflowHeader) {
|
|
4468
|
+
var groupHeader_1 = this.createElement('div', {
|
|
4469
|
+
className: RIBBON_OVERFLOW_HEADER,
|
|
4470
|
+
id: groupId + GROUPOF_BUTTON_ID + HEADER_ID,
|
|
4471
|
+
innerHTML: itemProp.group.overflowHeader
|
|
4472
|
+
});
|
|
4473
|
+
overflowBtnTarget.append(groupHeader_1);
|
|
4474
|
+
}
|
|
4475
|
+
}
|
|
4361
4476
|
if (groupEle) {
|
|
4362
4477
|
if (groupEle.classList.contains('e-disabled')) {
|
|
4363
4478
|
overflowBtnTarget.classList.add('e-disabled');
|
|
@@ -4386,7 +4501,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
4386
4501
|
if (ofTabContainer) {
|
|
4387
4502
|
var ofGroupContainer = overflowEle.querySelector('#' + groupId + CONTAINER_ID);
|
|
4388
4503
|
if (!ofGroupContainer) {
|
|
4389
|
-
ofGroupContainer = this.createGroupContainer(groupId, groupHeader);
|
|
4504
|
+
ofGroupContainer = itemProp.group.overflowHeader ? this.createGroupContainer(groupId, itemProp.group.overflowHeader) : this.createGroupContainer(groupId, groupHeader);
|
|
4390
4505
|
if (groupEle) {
|
|
4391
4506
|
if (groupEle.classList.contains('e-disabled')) {
|
|
4392
4507
|
ofGroupContainer.classList.add('e-disabled');
|
|
@@ -4434,7 +4549,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
4434
4549
|
break;
|
|
4435
4550
|
case 'GroupButton':
|
|
4436
4551
|
if (this.activeLayout === 'Simplified') {
|
|
4437
|
-
this.ribbonGroupButtonModule.addOverFlowEvents(item, itemEle);
|
|
4552
|
+
this.ribbonGroupButtonModule.addOverFlowEvents(item, itemEle, overflowButton);
|
|
4438
4553
|
break;
|
|
4439
4554
|
}
|
|
4440
4555
|
}
|
|
@@ -4446,7 +4561,8 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
4446
4561
|
});
|
|
4447
4562
|
var overflowtarget = this.overflowDDB.target;
|
|
4448
4563
|
overflowtarget.append(ofTabContainer);
|
|
4449
|
-
var
|
|
4564
|
+
var itemProp = getGroup(this.tabs, groupId);
|
|
4565
|
+
var ofGroupContainer = itemProp.group.overflowHeader ? this.createGroupContainer(groupId, itemProp.group.overflowHeader) : this.createGroupContainer(groupId, groupHeader);
|
|
4450
4566
|
ofGroupContainer.append(itemEle);
|
|
4451
4567
|
ofTabContainer.append(ofGroupContainer);
|
|
4452
4568
|
if (tabIndex === this.selectedTab) {
|
|
@@ -5303,9 +5419,10 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
5303
5419
|
},
|
|
5304
5420
|
beforeClose: function (args) {
|
|
5305
5421
|
var ele = args.event ? closest(args.event.target, '.' + RIBBON_POPUP_CONTROL) : null;
|
|
5422
|
+
var groupButtonEle = args.event ? closest(args.event.target, '.e-ribbon-group-button-overflow-popup') : null;
|
|
5306
5423
|
var eventArgs = { element: args.element, event: args.event, cancel: args.cancel };
|
|
5307
5424
|
_this.trigger('overflowPopupClose', eventArgs, function (ribbonArgs) {
|
|
5308
|
-
if (ele || ribbonArgs.cancel) {
|
|
5425
|
+
if (ele || ribbonArgs.cancel || groupButtonEle) {
|
|
5309
5426
|
args.cancel = true;
|
|
5310
5427
|
}
|
|
5311
5428
|
});
|
|
@@ -5327,8 +5444,10 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
5327
5444
|
var currentList = target.querySelector('.e-ribbon-of-tab.e-ribbon-active');
|
|
5328
5445
|
items = currentList.getElementsByClassName('e-ribbon-item');
|
|
5329
5446
|
}
|
|
5330
|
-
var
|
|
5447
|
+
var control = items[(!this.itemIndex || this.itemIndex < 0) ? 0 : this.itemIndex].querySelector('.e-control');
|
|
5448
|
+
var comboBoxEle = control && control.classList.contains('e-combobox') ? items[(!this.itemIndex || this.itemIndex < 0) ? 0 : this.itemIndex].querySelector('.e-combobox') : null;
|
|
5331
5449
|
var ribbonItem;
|
|
5450
|
+
var templateEle;
|
|
5332
5451
|
if (comboBoxEle === null || (e.key === 'Tab') || this.itemIndex < 0) {
|
|
5333
5452
|
if (e.key === 'ArrowDown' || (!e.shiftKey && e.key === 'Tab')) {
|
|
5334
5453
|
if ((!this.itemIndex && this.itemIndex !== 0) || this.itemIndex < 0 || this.itemIndex === items.length - 1) {
|
|
@@ -5337,13 +5456,21 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
5337
5456
|
this.findDisabledItem(ribbonItem, items, true);
|
|
5338
5457
|
if (comboBoxEle && e.key === 'Tab') {
|
|
5339
5458
|
e.preventDefault();
|
|
5340
|
-
items[this.itemIndex].querySelector('.e-control')
|
|
5459
|
+
var item = items[this.itemIndex].querySelector('.e-control');
|
|
5460
|
+
if (item) {
|
|
5461
|
+
item.focus();
|
|
5462
|
+
}
|
|
5341
5463
|
}
|
|
5464
|
+
templateEle = items[this.itemIndex].querySelector('.e-ribbon-template');
|
|
5342
5465
|
}
|
|
5343
5466
|
else if (this.itemIndex < items.length - 1 && this.itemIndex >= 0) {
|
|
5344
5467
|
this.itemIndex++;
|
|
5345
5468
|
ribbonItem = items[this.itemIndex].closest('.e-ribbon-item');
|
|
5346
5469
|
this.findDisabledItem(ribbonItem, items, true);
|
|
5470
|
+
templateEle = items[this.itemIndex].querySelector('.e-ribbon-template');
|
|
5471
|
+
}
|
|
5472
|
+
if (templateEle) {
|
|
5473
|
+
templateEle.focus();
|
|
5347
5474
|
}
|
|
5348
5475
|
}
|
|
5349
5476
|
else if (e.key === 'ArrowUp' || (e.shiftKey && e.key === 'Tab')) {
|
|
@@ -5354,20 +5481,32 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
5354
5481
|
this.findDisabledItem(ribbonItem, items, false);
|
|
5355
5482
|
if (comboBoxEle && (e.shiftKey && e.key === 'Tab')) {
|
|
5356
5483
|
e.preventDefault();
|
|
5357
|
-
items[this.itemIndex].querySelector('.e-control')
|
|
5484
|
+
var item = items[this.itemIndex].querySelector('.e-control');
|
|
5485
|
+
if (item) {
|
|
5486
|
+
item.focus();
|
|
5487
|
+
}
|
|
5358
5488
|
}
|
|
5489
|
+
templateEle = items[this.itemIndex].querySelector('.e-ribbon-template');
|
|
5359
5490
|
}
|
|
5360
5491
|
else if (this.itemIndex <= items.length - 1 && this.itemIndex > 0) {
|
|
5361
5492
|
this.itemIndex--;
|
|
5362
5493
|
ribbonItem = items[this.itemIndex].closest('.e-ribbon-item');
|
|
5363
5494
|
this.findDisabledItem(ribbonItem, items, false);
|
|
5495
|
+
templateEle = items[this.itemIndex].querySelector('.e-ribbon-template');
|
|
5496
|
+
}
|
|
5497
|
+
if (templateEle) {
|
|
5498
|
+
templateEle.focus();
|
|
5364
5499
|
}
|
|
5365
5500
|
}
|
|
5366
5501
|
}
|
|
5367
5502
|
target.setAttribute('index', this.itemIndex.toString());
|
|
5368
5503
|
}
|
|
5369
5504
|
var currentItemIndex = parseInt(target.getAttribute('index'), 10);
|
|
5370
|
-
var itemType =
|
|
5505
|
+
var itemType = "";
|
|
5506
|
+
var controlItem = items[parseInt(currentItemIndex.toString(), 10)] ? items[parseInt(currentItemIndex.toString(), 10)].querySelector('.e-control') : null;
|
|
5507
|
+
if (controlItem) {
|
|
5508
|
+
itemType = controlItem.getAttribute('data-control');
|
|
5509
|
+
}
|
|
5371
5510
|
if (e.key === 'ArrowDown' || e.key === 'ArrowUp' || e.key === ' ' || e.key === 'Tab') {
|
|
5372
5511
|
if (itemType === 'ColorPicker') {
|
|
5373
5512
|
if (e.key === 'Tab') {
|
|
@@ -5379,7 +5518,10 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
5379
5518
|
if (e.key === 'Tab') {
|
|
5380
5519
|
e.preventDefault();
|
|
5381
5520
|
}
|
|
5382
|
-
items[parseInt(currentItemIndex.toString(), 10)].querySelector('.e-control')
|
|
5521
|
+
var elem = items[parseInt(currentItemIndex.toString(), 10)].querySelector('.e-control');
|
|
5522
|
+
if (elem) {
|
|
5523
|
+
elem.focus();
|
|
5524
|
+
}
|
|
5383
5525
|
}
|
|
5384
5526
|
if (e.key === ' ' && (itemType === 'CheckBox')) {
|
|
5385
5527
|
var checkBoxEle = items[parseInt(currentItemIndex.toString(), 10)].querySelector('.e-control');
|
|
@@ -5766,7 +5908,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
5766
5908
|
this.setItemSize(ele, item);
|
|
5767
5909
|
}
|
|
5768
5910
|
if (group.enableGroupOverflow && overflowDDB) {
|
|
5769
|
-
if (overflowtarget.childElementCount === 0) {
|
|
5911
|
+
if (overflowtarget.childElementCount === 0 || (overflowtarget.childElementCount === 1 && this.isHeaderVisible(overflowtarget, group.id))) {
|
|
5770
5912
|
this.removeOverflowButton(overflowDDB);
|
|
5771
5913
|
}
|
|
5772
5914
|
}
|
|
@@ -6051,7 +6193,8 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
6051
6193
|
Ribbon.prototype.createTemplateContent = function (item, itemElement) {
|
|
6052
6194
|
var itemEle = this.createElement('div', {
|
|
6053
6195
|
className: item.cssClass ? (RIBBON_TEMPLATE + SPACE + item.cssClass) : RIBBON_TEMPLATE,
|
|
6054
|
-
id: item.id
|
|
6196
|
+
id: item.id,
|
|
6197
|
+
attrs: { 'tabindex': '-1' }
|
|
6055
6198
|
});
|
|
6056
6199
|
if (item.disabled) {
|
|
6057
6200
|
itemEle.classList.add(DISABLED_CSS);
|
|
@@ -6527,7 +6670,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
6527
6670
|
}
|
|
6528
6671
|
if (this.activeLayout === RibbonLayout.Simplified) {
|
|
6529
6672
|
if (itemProp.group.enableGroupOverflow) {
|
|
6530
|
-
if (dropdown.target.childElementCount === 0) {
|
|
6673
|
+
if (dropdown.target.childElementCount === 0 || (dropdown.target.childElementCount === 1 && this.isHeaderVisible(dropdown.target, itemProp.group.id))) {
|
|
6531
6674
|
this.removeOverflowButton(dropdown);
|
|
6532
6675
|
}
|
|
6533
6676
|
}
|
|
@@ -6554,6 +6697,9 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
6554
6697
|
this.refreshLayout();
|
|
6555
6698
|
}
|
|
6556
6699
|
};
|
|
6700
|
+
Ribbon.prototype.isHeaderVisible = function (headerEle, groupID) {
|
|
6701
|
+
return headerEle.querySelector('#' + groupID + GROUPOF_BUTTON_ID + HEADER_ID) ? true : false;
|
|
6702
|
+
};
|
|
6557
6703
|
/**
|
|
6558
6704
|
* Hides a specific group within a ribbon tab.
|
|
6559
6705
|
*
|
|
@@ -7113,7 +7259,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
7113
7259
|
}
|
|
7114
7260
|
if (this.activeLayout === RibbonLayout.Simplified) {
|
|
7115
7261
|
if (itemProp.group.enableGroupOverflow) {
|
|
7116
|
-
if (dropdown.target.childElementCount === 0) {
|
|
7262
|
+
if (dropdown.target.childElementCount === 0 || (dropdown.target.childElementCount === 1 && this.isHeaderVisible(dropdown.target, itemProp.group.id))) {
|
|
7117
7263
|
this.removeOverflowButton(dropdown);
|
|
7118
7264
|
}
|
|
7119
7265
|
}
|
|
@@ -7332,7 +7478,7 @@ var Ribbon = /** @__PURE__ @class */ (function (_super) {
|
|
|
7332
7478
|
}
|
|
7333
7479
|
this.createRibbonItem(ribbonItem, itemContainer);
|
|
7334
7480
|
if (this.activeLayout === 'Simplified' && itemProp.group.enableGroupOverflow) {
|
|
7335
|
-
if (dropdown.target.childElementCount === 0) {
|
|
7481
|
+
if (dropdown.target.childElementCount === 0 || (dropdown.target.childElementCount === 1 && this.isHeaderVisible(dropdown.target, itemProp.group.id))) {
|
|
7336
7482
|
this.removeOverflowButton(dropdown);
|
|
7337
7483
|
}
|
|
7338
7484
|
}
|
|
@@ -8343,6 +8489,9 @@ var RibbonBackstage = /** @__PURE__ @class */ (function (_super) {
|
|
|
8343
8489
|
this.closeBtn.setProperties(commonProp);
|
|
8344
8490
|
}
|
|
8345
8491
|
}
|
|
8492
|
+
if (this.footerMenuCtrl) {
|
|
8493
|
+
this.footerMenuCtrl.setProperties(commonProp);
|
|
8494
|
+
}
|
|
8346
8495
|
}
|
|
8347
8496
|
}
|
|
8348
8497
|
};
|