+ const availableWidth = $expandedSecondaryMenu.width();
+ secondaryMenuItems.forEach(function (item) {
+ $(item[0]).remove();
+ });
+ let runningWidth = 0,
+ i = 0,
+ requiredWidth;
+ for (; i < secondaryMenuItems.length; i++) {
+ runningWidth += secondaryMenuItems[i][1];
+ if (i < secondaryMenuItems.length - 1) {
+ requiredWidth = runningWidth + moreItemWidth;
+ } else {
+ requiredWidth = runningWidth;
+ }
+ if (requiredWidth > availableWidth) {
+ break;
+ }
+ expandSecondaryMenuItem($(secondaryMenuItems[i][0]));
+ }
+ for (; i < secondaryMenuItems.length; i++) {
+ collapseSecondaryMenuItem($(secondaryMenuItems[i][0]));
+ }