@boomerang-io/carbon-addons-boomerang-react 4.6.14-beta.10 → 4.6.14-beta.11

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.
@@ -304,10 +304,18 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
304
304
  const isTeamSelected = team.id === selectedTeam?.id;
305
305
  if (team.type === TeamTypes.TEAM_TYPES.ACCOUNT) {
306
306
  const isSubmenuOpen = team.id === openAccountSubmenuId;
307
- const isProjectTeamSelected = team.projectTeams &&
308
- team.projectTeams.length > 0 &&
309
- team.projectTeams.some((team) => team.id === selectedTeam?.id);
307
+ const projectTeams = team.projectTeams;
308
+ const existProjectTeams = Array.isArray(projectTeams) && projectTeams.length > 0;
309
+ let selectedProjectTeamIndex = -1;
310
+ if (existProjectTeams) {
311
+ selectedProjectTeamIndex = projectTeams.findIndex((team) => team.id === selectedTeam?.id);
312
+ }
313
+ const isProjectTeamSelected = selectedProjectTeamIndex >= 0;
310
314
  const isMenuSelected = isTeamSelected || isProjectTeamSelected;
315
+ if (existProjectTeams && isProjectTeamSelected) {
316
+ const [removedTeam] = projectTeams.splice(selectedProjectTeamIndex, 1);
317
+ projectTeams.unshift(removedTeam);
318
+ }
311
319
  return (React__default.default.createElement("div", { key: team.id, id: `${team.id}-account-menu` },
312
320
  React__default.default.createElement(react.HeaderMenuItem, { "aria-expanded": isSubmenuOpen, "aria-selected": isMenuSelected, className: headerDropdownMenuItemAccountContainerClassname, onClick: (e) => handleOpenAccountSubmenu({ e, id: team.id }),
313
321
  // eslint-disable-next-line no-script-url
@@ -328,8 +336,8 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
328
336
  React__default.default.createElement("div", { className: headerDropdownMenuItemClassname, style: { paddingLeft: "1rem" } },
329
337
  React__default.default.createElement("span", { title: team.nameToDisplay, className: headerDropdownMenuItemTextClassname }, "Account Page"),
330
338
  isTeamSelected ? React__default.default.createElement(icons.CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null)),
331
- team.projectTeams && team.projectTeams.length > 0
332
- ? team.projectTeams.map((team) => {
339
+ projectTeams && projectTeams.length > 0
340
+ ? projectTeams.map((team) => {
333
341
  const isTeamSelected = team.id === selectedTeam?.id;
334
342
  return (React__default.default.createElement("div", { key: team.id, id: `${team.id}-project-menu-item` },
335
343
  React__default.default.createElement(react.HeaderMenuItem, { "aria-selected": isTeamSelected, className: headerDropdownMenuItemContainerClassname, onClick: () => {
@@ -295,10 +295,18 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
295
295
  const isTeamSelected = team.id === selectedTeam?.id;
296
296
  if (team.type === TEAM_TYPES.ACCOUNT) {
297
297
  const isSubmenuOpen = team.id === openAccountSubmenuId;
298
- const isProjectTeamSelected = team.projectTeams &&
299
- team.projectTeams.length > 0 &&
300
- team.projectTeams.some((team) => team.id === selectedTeam?.id);
298
+ const projectTeams = team.projectTeams;
299
+ const existProjectTeams = Array.isArray(projectTeams) && projectTeams.length > 0;
300
+ let selectedProjectTeamIndex = -1;
301
+ if (existProjectTeams) {
302
+ selectedProjectTeamIndex = projectTeams.findIndex((team) => team.id === selectedTeam?.id);
303
+ }
304
+ const isProjectTeamSelected = selectedProjectTeamIndex >= 0;
301
305
  const isMenuSelected = isTeamSelected || isProjectTeamSelected;
306
+ if (existProjectTeams && isProjectTeamSelected) {
307
+ const [removedTeam] = projectTeams.splice(selectedProjectTeamIndex, 1);
308
+ projectTeams.unshift(removedTeam);
309
+ }
302
310
  return (React.createElement("div", { key: team.id, id: `${team.id}-account-menu` },
303
311
  React.createElement(HeaderMenuItem, { "aria-expanded": isSubmenuOpen, "aria-selected": isMenuSelected, className: headerDropdownMenuItemAccountContainerClassname, onClick: (e) => handleOpenAccountSubmenu({ e, id: team.id }),
304
312
  // eslint-disable-next-line no-script-url
@@ -319,8 +327,8 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
319
327
  React.createElement("div", { className: headerDropdownMenuItemClassname, style: { paddingLeft: "1rem" } },
320
328
  React.createElement("span", { title: team.nameToDisplay, className: headerDropdownMenuItemTextClassname }, "Account Page"),
321
329
  isTeamSelected ? React.createElement(CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null)),
322
- team.projectTeams && team.projectTeams.length > 0
323
- ? team.projectTeams.map((team) => {
330
+ projectTeams && projectTeams.length > 0
331
+ ? projectTeams.map((team) => {
324
332
  const isTeamSelected = team.id === selectedTeam?.id;
325
333
  return (React.createElement("div", { key: team.id, id: `${team.id}-project-menu-item` },
326
334
  React.createElement(HeaderMenuItem, { "aria-selected": isTeamSelected, className: headerDropdownMenuItemContainerClassname, onClick: () => {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@boomerang-io/carbon-addons-boomerang-react",
3
3
  "description": "Carbon Addons for Boomerang apps",
4
- "version": "4.6.14-beta.10",
4
+ "version": "4.6.14-beta.11",
5
5
  "author": {
6
6
  "name": "Tim Bula",
7
7
  "email": "timrbula@gmail.com"