@boomerang-io/carbon-addons-boomerang-react 4.6.11-beta.28 → 4.6.11-beta.29

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.
@@ -51,26 +51,26 @@ function AdvantageSideNav(props) {
51
51
  const adminNavlink = sideNavUrls?.find((sideNavUrl) => sideNavUrl.key === SideNavUrlKeys.Admin)?.url;
52
52
  // get current selected team
53
53
  let teamSwitcherTeam = null;
54
- if (personalTeams.length > 0) {
54
+ if (Array.isArray(personalTeams) && personalTeams.length > 0) {
55
55
  personalTeams.forEach((team) => {
56
56
  if (team.id === user?.teamInstanceSwitcherDefault) {
57
57
  teamSwitcherTeam = { ...team, isPersonal: true };
58
58
  }
59
59
  });
60
60
  }
61
- if (teams.length > 0) {
61
+ if (Array.isArray(teams) && teams.length > 0) {
62
62
  teams.forEach((team) => {
63
63
  if (team.id === user?.teamInstanceSwitcherDefault) {
64
64
  teamSwitcherTeam = { ...team, isStandard: true };
65
65
  }
66
66
  });
67
67
  }
68
- if (accounts.length > 0) {
68
+ if (Array.isArray(accounts) && accounts.length > 0) {
69
69
  accounts.forEach((account) => {
70
70
  if (account.id === user?.teamInstanceSwitcherDefault) {
71
71
  teamSwitcherTeam = { ...account, isAccount: true };
72
72
  }
73
- else if (account.projectTeams && account.projectTeams?.length > 0) {
73
+ else if (Array.isArray(account.projectTeams) && account.projectTeams.length > 0) {
74
74
  account.projectTeams.forEach((projectTeam) => {
75
75
  if (projectTeam.id === user?.teamInstanceSwitcherDefault) {
76
76
  teamSwitcherTeam = { ...projectTeam, isProject: true };
@@ -10,6 +10,7 @@ var sortBy = require('lodash.sortby');
10
10
  var HeaderMenu = require('./HeaderMenu.js');
11
11
  var servicesConfig = require('../../config/servicesConfig.js');
12
12
  var settings = require('../../internal/settings.js');
13
+ var UserType = require('../../constants/UserType.js');
13
14
 
14
15
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
15
16
 
@@ -232,18 +233,19 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
232
233
  if (selectedTeamName && selectedTeamName.length > 65) {
233
234
  selectedTeamName = selectedTeamName.slice(0, 65) + "...";
234
235
  }
236
+ const isPartnerUser = Boolean(user?.type === UserType.USER_PLATFORM_ROLE.Partner);
235
237
  return (React__default.default.createElement("div", { className: headerDropdownMenuContainerClassname },
236
238
  isLoadingTeamSwitcher ? (React__default.default.createElement("div", { className: headerDropdownMenuLoadingClassname },
237
239
  React__default.default.createElement(react.InlineLoading, null))) : isSuccessTeamSwitcher ? (React__default.default.createElement("div", { className: headerDropdownMenuSuccessClassname },
238
240
  React__default.default.createElement(icons.CheckmarkFilled, null))) : null,
239
241
  React__default.default.createElement(react.HeaderMenu, { id: "header-team-switcher-menu", "aria-label": menuAriaLabelRecord, className: headerDropdownMenuClassname, menuLinkName: selectedTeamName ? selectedTeamName : "No team selected", onClick: handleHeaderMenuClick, "data-testid": "header-team-switcher-menu" },
240
242
  React__default.default.createElement(HeaderMenu.default, { "aria-labelledby": menuButtonId, className: headerDropdownMenuListClassname, id: menuListId },
241
- React__default.default.createElement(react.HeaderMenuItem, { id: "header-team-switcher-create-join-team-button", className: headerTeamSwitcherCreateTeamButtonContainerClassname, onClick: handleCreateJoinTeamClick,
243
+ !isPartnerUser && (React__default.default.createElement(react.HeaderMenuItem, { id: "header-team-switcher-create-join-team-button", className: headerTeamSwitcherCreateTeamButtonContainerClassname, onClick: handleCreateJoinTeamClick,
242
244
  // eslint-disable-next-line no-script-url
243
245
  href: "javascript:void(0)", role: "menuitem", "data-testid": "header-team-switcher-create-join-team-button" },
244
246
  React__default.default.createElement("div", { className: headerTeamSwitcherCreateTeamButtonClassname },
245
247
  React__default.default.createElement("span", { className: headerTeamSwitcherCreateTeamButtonTextClassname }, createTeamButtonText),
246
- React__default.default.createElement(icons.AddAlt, { className: headerTeamSwitcherCreateTeamButtonIconClassname }))),
248
+ React__default.default.createElement(icons.AddAlt, { className: headerTeamSwitcherCreateTeamButtonIconClassname })))),
247
249
  personalTeam.length > 0
248
250
  ? personalTeam.map((team) => {
249
251
  const teamName = team.displayName ? team.displayName : team.name;
@@ -77,12 +77,12 @@ function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme = "g10", config, cr
77
77
  ...profileMenuItems,
78
78
  isSignOutEnabled && React__default.default.createElement(SignOut.SignOutMenuItem, { key: "Sign Out", signOutLink: platform.signOutUrl }),
79
79
  ].filter(Boolean), supportMenuItems: [
80
- React__default.default.createElement(HeaderMenuItem.default, { key: "docs", href: platform?.docs?.url, icon: React__default.default.createElement(icons.Document, null), "data-testid": "docs", kind: "app", text: "Docs", type: "link" }),
80
+ !isPartnerUser && (React__default.default.createElement(HeaderMenuItem.default, { key: "docs", href: platform?.docs?.url, icon: React__default.default.createElement(icons.Document, null), "data-testid": "docs", kind: "app", text: "Docs", type: "link" })),
81
81
  isSupportEnabled &&
82
82
  (supportFlagCheck || isPartnerUser ? (React__default.default.createElement(SupportCenter.SupportCenterMenuItem, { key: "support-center", platformName: platform?.platformName, platformOrganization: platform?.platformOrganization, supportLink: supportLink, partnerEmailId: partnerEmailId, enablePartner: isPartnerUser, baseServicesUrl: platform.baseServicesUrl })) : (React__default.default.createElement(HeaderMenuItem.default, { key: "support-center", href: platform?.supportUrl, icon: React__default.default.createElement(icons.HelpDesk, null), kind: "external", text: "Support Center", type: "link" }))),
83
83
  React__default.default.createElement(HeaderMenuItem.default, { key: "release-notes", href: platform?.releaseNotesUrl, icon: React__default.default.createElement(icons.CatalogPublish, null), "data-testid": "release-notes", kind: "app", text: "Release Notes", type: "link" }),
84
84
  React__default.default.createElement(HeaderMenuItem.default, { key: "legal-terms", href: platform?.legalTermsUrl, icon: React__default.default.createElement(icons.Policy, null), "data-testid": "legal-terms", kind: "app", text: "Legal Terms", type: "link" }),
85
- React__default.default.createElement("span", { style: { "borderBottom": "1px solid #b8c1c1" } }),
85
+ React__default.default.createElement("span", { style: { borderBottom: "1px solid #b8c1c1" } }),
86
86
  isCommunityEnabled && (React__default.default.createElement(HeaderMenuItem.default, { key: "community", href: platform?.communityUrl, icon: React__default.default.createElement(icons.Forum, null), kind: "external", text: "Community", type: "link" })),
87
87
  isFeedbackEnabled && (React__default.default.createElement(Feedback.FeedbackMenuItem, { key: "feedback", platformName: platform?.platformName, platformOrganization: platform?.platformOrganization, sendIdeasUrl: sendIdeasUrl })),
88
88
  !isPartnerUser && askICAEnabled ? (React__default.default.createElement(HeaderMenuItem.default, { key: "chat-launch", href: platform?.askICAUrl, icon: React__default.default.createElement(icons.ChatLaunch, null), "data-testid": "askICA-chatlaunch", kind: "external", text: "AskICA", type: "link" })) : null,
@@ -42,26 +42,26 @@ function AdvantageSideNav(props) {
42
42
  const adminNavlink = sideNavUrls?.find((sideNavUrl) => sideNavUrl.key === SideNavUrlKeys.Admin)?.url;
43
43
  // get current selected team
44
44
  let teamSwitcherTeam = null;
45
- if (personalTeams.length > 0) {
45
+ if (Array.isArray(personalTeams) && personalTeams.length > 0) {
46
46
  personalTeams.forEach((team) => {
47
47
  if (team.id === user?.teamInstanceSwitcherDefault) {
48
48
  teamSwitcherTeam = { ...team, isPersonal: true };
49
49
  }
50
50
  });
51
51
  }
52
- if (teams.length > 0) {
52
+ if (Array.isArray(teams) && teams.length > 0) {
53
53
  teams.forEach((team) => {
54
54
  if (team.id === user?.teamInstanceSwitcherDefault) {
55
55
  teamSwitcherTeam = { ...team, isStandard: true };
56
56
  }
57
57
  });
58
58
  }
59
- if (accounts.length > 0) {
59
+ if (Array.isArray(accounts) && accounts.length > 0) {
60
60
  accounts.forEach((account) => {
61
61
  if (account.id === user?.teamInstanceSwitcherDefault) {
62
62
  teamSwitcherTeam = { ...account, isAccount: true };
63
63
  }
64
- else if (account.projectTeams && account.projectTeams?.length > 0) {
64
+ else if (Array.isArray(account.projectTeams) && account.projectTeams.length > 0) {
65
65
  account.projectTeams.forEach((projectTeam) => {
66
66
  if (projectTeam.id === user?.teamInstanceSwitcherDefault) {
67
67
  teamSwitcherTeam = { ...projectTeam, isProject: true };
@@ -6,6 +6,7 @@ import sortBy from 'lodash.sortby';
6
6
  import HeaderMenu$1 from './HeaderMenu.js';
7
7
  import { resolver, serviceUrl } from '../../config/servicesConfig.js';
8
8
  import { prefix } from '../../internal/settings.js';
9
+ import { USER_PLATFORM_ROLE } from '../../constants/UserType.js';
9
10
 
10
11
  /*
11
12
  IBM Confidential
@@ -223,18 +224,19 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
223
224
  if (selectedTeamName && selectedTeamName.length > 65) {
224
225
  selectedTeamName = selectedTeamName.slice(0, 65) + "...";
225
226
  }
227
+ const isPartnerUser = Boolean(user?.type === USER_PLATFORM_ROLE.Partner);
226
228
  return (React.createElement("div", { className: headerDropdownMenuContainerClassname },
227
229
  isLoadingTeamSwitcher ? (React.createElement("div", { className: headerDropdownMenuLoadingClassname },
228
230
  React.createElement(InlineLoading, null))) : isSuccessTeamSwitcher ? (React.createElement("div", { className: headerDropdownMenuSuccessClassname },
229
231
  React.createElement(CheckmarkFilled, null))) : null,
230
232
  React.createElement(HeaderMenu, { id: "header-team-switcher-menu", "aria-label": menuAriaLabelRecord, className: headerDropdownMenuClassname, menuLinkName: selectedTeamName ? selectedTeamName : "No team selected", onClick: handleHeaderMenuClick, "data-testid": "header-team-switcher-menu" },
231
233
  React.createElement(HeaderMenu$1, { "aria-labelledby": menuButtonId, className: headerDropdownMenuListClassname, id: menuListId },
232
- React.createElement(HeaderMenuItem, { id: "header-team-switcher-create-join-team-button", className: headerTeamSwitcherCreateTeamButtonContainerClassname, onClick: handleCreateJoinTeamClick,
234
+ !isPartnerUser && (React.createElement(HeaderMenuItem, { id: "header-team-switcher-create-join-team-button", className: headerTeamSwitcherCreateTeamButtonContainerClassname, onClick: handleCreateJoinTeamClick,
233
235
  // eslint-disable-next-line no-script-url
234
236
  href: "javascript:void(0)", role: "menuitem", "data-testid": "header-team-switcher-create-join-team-button" },
235
237
  React.createElement("div", { className: headerTeamSwitcherCreateTeamButtonClassname },
236
238
  React.createElement("span", { className: headerTeamSwitcherCreateTeamButtonTextClassname }, createTeamButtonText),
237
- React.createElement(AddAlt, { className: headerTeamSwitcherCreateTeamButtonIconClassname }))),
239
+ React.createElement(AddAlt, { className: headerTeamSwitcherCreateTeamButtonIconClassname })))),
238
240
  personalTeam.length > 0
239
241
  ? personalTeam.map((team) => {
240
242
  const teamName = team.displayName ? team.displayName : team.name;
@@ -69,12 +69,12 @@ function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme = "g10", config, cr
69
69
  ...profileMenuItems,
70
70
  isSignOutEnabled && React.createElement(SignOutMenuItem, { key: "Sign Out", signOutLink: platform.signOutUrl }),
71
71
  ].filter(Boolean), supportMenuItems: [
72
- React.createElement(HeaderMenuItem, { key: "docs", href: platform?.docs?.url, icon: React.createElement(Document, null), "data-testid": "docs", kind: "app", text: "Docs", type: "link" }),
72
+ !isPartnerUser && (React.createElement(HeaderMenuItem, { key: "docs", href: platform?.docs?.url, icon: React.createElement(Document, null), "data-testid": "docs", kind: "app", text: "Docs", type: "link" })),
73
73
  isSupportEnabled &&
74
74
  (supportFlagCheck || isPartnerUser ? (React.createElement(SupportCenterMenuItem, { key: "support-center", platformName: platform?.platformName, platformOrganization: platform?.platformOrganization, supportLink: supportLink, partnerEmailId: partnerEmailId, enablePartner: isPartnerUser, baseServicesUrl: platform.baseServicesUrl })) : (React.createElement(HeaderMenuItem, { key: "support-center", href: platform?.supportUrl, icon: React.createElement(HelpDesk, null), kind: "external", text: "Support Center", type: "link" }))),
75
75
  React.createElement(HeaderMenuItem, { key: "release-notes", href: platform?.releaseNotesUrl, icon: React.createElement(CatalogPublish, null), "data-testid": "release-notes", kind: "app", text: "Release Notes", type: "link" }),
76
76
  React.createElement(HeaderMenuItem, { key: "legal-terms", href: platform?.legalTermsUrl, icon: React.createElement(Policy, null), "data-testid": "legal-terms", kind: "app", text: "Legal Terms", type: "link" }),
77
- React.createElement("span", { style: { "borderBottom": "1px solid #b8c1c1" } }),
77
+ React.createElement("span", { style: { borderBottom: "1px solid #b8c1c1" } }),
78
78
  isCommunityEnabled && (React.createElement(HeaderMenuItem, { key: "community", href: platform?.communityUrl, icon: React.createElement(Forum, null), kind: "external", text: "Community", type: "link" })),
79
79
  isFeedbackEnabled && (React.createElement(FeedbackMenuItem, { key: "feedback", platformName: platform?.platformName, platformOrganization: platform?.platformOrganization, sendIdeasUrl: sendIdeasUrl })),
80
80
  !isPartnerUser && askICAEnabled ? (React.createElement(HeaderMenuItem, { key: "chat-launch", href: platform?.askICAUrl, icon: React.createElement(ChatLaunch, null), "data-testid": "askICA-chatlaunch", kind: "external", text: "AskICA", type: "link" })) : null,
@@ -260,7 +260,7 @@ type NavLink = {
260
260
  };
261
261
 
262
262
  type Props$I = {
263
- accounts?: Array<SideNavAccount>;
263
+ accounts?: Array<SideNavAccount> | null;
264
264
  app?: string;
265
265
  appLink: any;
266
266
  regionalTeam?: any;
@@ -274,7 +274,7 @@ type Props$I = {
274
274
  isLoading?: boolean;
275
275
  isOpen?: boolean;
276
276
  navLinks?: NavLink[];
277
- personalTeams?: Array<SideNavTeam>;
277
+ personalTeams?: Array<SideNavTeam> | null;
278
278
  showChatTooltip?: boolean;
279
279
  sideNavUrls?: {
280
280
  key: string;
@@ -282,7 +282,7 @@ type Props$I = {
282
282
  url: string;
283
283
  icon: string;
284
284
  }[];
285
- teams?: Array<SideNavTeam>;
285
+ teams?: Array<SideNavTeam> | null;
286
286
  templateMeteringEvent?: (props: any) => void;
287
287
  tooltipMessage?: string;
288
288
  triggerEvent?: (props: any) => void;
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.11-beta.28",
4
+ "version": "4.6.11-beta.29",
5
5
  "author": {
6
6
  "name": "Tim Bula",
7
7
  "email": "timrbula@gmail.com"