@boomerang-io/carbon-addons-boomerang-react 4.6.21-beta.33 → 4.6.21-beta.35

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.
@@ -147,6 +147,15 @@ function AdvantageSideNav(props) {
147
147
  };
148
148
  const chatSideNavLink = (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-chat-link", className: !enableChatButton ? `${settings.prefix}--bmrg-advantage-sidenav__inactive-link` : "", disabled: Boolean(!enableChatButton), renderIcon: icons.ChatBot, href: enableChatButton && chatLink, onClick: enableChatButton ? handleChatClick : (e) => e.preventDefault() }, "Chat"));
149
149
  const showSecondDivider = showChatButton || toolsLink || agentAssistantStudioLink || agentAssistantLibraryLink || documentCollectionsLink;
150
+ const navigateInternal = (url) => {
151
+ const target = new URL(url, window.location.origin);
152
+ if (target.origin === window.location.origin) {
153
+ history.push(target.pathname + target.search + target.hash);
154
+ }
155
+ else {
156
+ window.location.href = url;
157
+ }
158
+ };
150
159
  return (React__default.default.createElement(react.SideNav, { "aria-label": "sidenav-container", className: cx__default.default(`${settings.prefix}--bmrg-advantage-sidenav-container`, className, {
151
160
  "--closed": !isMenuOpen,
152
161
  }), "data-testid": "sidenav-container", isRail: true, expanded: isMenuOpen, onMouseEnter: () => setActiveMenu(true), onMouseLeave: () => {
@@ -200,15 +209,27 @@ function AdvantageSideNav(props) {
200
209
  // (agentStudioPath && windowLocation.href.includes(`/launchpad${agentStudioPath}`)) ||
201
210
  // (agenticAppsPath && windowLocation.href.includes(`/launchpad${agenticAppsPath}`))
202
211
  // }
203
- className: `${settings.prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink), renderIcon: icons.IntentRequestCreate, href: agentAssistantStudioLink }, "Agent & Assistant Studio")) : null,
204
- agentAssistantLibraryLink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-agent-assistant-library-link", renderIcon: icons.Folders, href: agentAssistantLibraryLink, className: `${settings.prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink) }, "Agent & Assistant Library")) : null,
205
- documentCollectionsLink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-document-collections-link", renderIcon: icons.DocumentMultiple_02, href: documentCollectionsLink, className: `${settings.prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink) }, "Document Collections")) : null,
212
+ className: `${settings.prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink), renderIcon: icons.IntentRequestCreate }, "Agent & Assistant Studio")) : null,
213
+ agentAssistantLibraryLink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-agent-assistant-library-link", renderIcon: icons.Folders,
214
+ //href={agentAssistantLibraryLink}
215
+ className: `${settings.prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink) }, "Agent & Assistant Library")) : null,
216
+ documentCollectionsLink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-document-collections-link", renderIcon: icons.DocumentMultiple_02,
217
+ //href={documentCollectionsLink}
218
+ className: `${settings.prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink) }, "Document Collections")) : null,
206
219
  showSecondDivider ? React__default.default.createElement(react.SideNavDivider, null) : null,
207
- catalogNavlink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-catalog-link", isActive: windowLocation.href.includes(`${baseEnvUrl}/catalog`), href: catalogNavlink, renderIcon: icons.Catalog }, "Catalog")) : null,
208
- settingsLink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-settings-link", renderIcon: icons.Settings, href: settingsLink, onClick: (e) => {
220
+ catalogNavlink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-catalog-link", isActive: windowLocation.href.includes(`${baseEnvUrl}/catalog`), renderIcon: icons.Catalog, onClick: (e) => {
221
+ e.preventDefault();
222
+ navigateInternal(catalogNavlink);
223
+ } }, "Catalog")) : null,
224
+ settingsLink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-settings-link", renderIcon: icons.Settings,
225
+ // href={settingsLink}
226
+ className: `${settings.prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink), onClick: (e) => {
209
227
  handleSettingsClick();
210
228
  } }, "Settings")) : null,
211
- adminNavlink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-admin-link", href: adminNavlink, renderIcon: icons.LicenseThirdParty }, "Admin")) : null),
229
+ adminNavlink ? (React__default.default.createElement(react.SideNavLink, { "data-testid": "sidenav-admin-link", renderIcon: icons.LicenseThirdParty, onClick: (e) => {
230
+ e.preventDefault();
231
+ navigateInternal(adminNavlink);
232
+ } }, "Admin")) : null),
212
233
  children ? (React__default.default.createElement(React__default.default.Fragment, null,
213
234
  React__default.default.createElement(react.SideNavDivider, null),
214
235
  children)) : null)));
@@ -53,7 +53,7 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
53
53
  const showSelectTeamPurpose = navigationPlatform?.requireTeamPurpose;
54
54
  const createTeamButtonText = showSelectTeamPurpose ? "Create Team" : "Create or Join Team";
55
55
  const userTeamInstanceSwitcherDefault = user?.teamInstanceSwitcherDefault;
56
- console.log("userTeamInstanceSwitcherDefault", userTeamInstanceSwitcherDefault);
56
+ const hasUpdatedDefaultTeamRef = React__default.default.useRef(false);
57
57
  const teamLink = ({ teamId }) => {
58
58
  return `${navigationPlatform.baseEnvUrl}/launchpad/teams/${teamId}`;
59
59
  };
@@ -91,41 +91,40 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
91
91
  const userHasStandardTeams = standardTeams.length > 0;
92
92
  const userHasTeams = userHasPersonalTeam || userHasAccountTeams || userHasStandardTeams;
93
93
  const handleSelectTeam = async ({ team }) => {
94
- console.log("handle select team", team);
95
94
  setSelectedTeam(team);
96
- if (!userTeamInstanceSwitcherDefault) {
95
+ if (!userTeamInstanceSwitcherDefault &&
96
+ !hasUpdatedDefaultTeamRef.current) {
97
+ hasUpdatedDefaultTeamRef.current = true;
97
98
  const body = {
98
99
  teamInstanceSwitcherDefault: team.id,
99
100
  };
100
- console.log("profile patch called", team);
101
101
  await mutateUserProfile({ baseServicesUrl, body });
102
102
  }
103
103
  };
104
104
  const handleNoTeamsToSelect = async () => {
105
+ if (hasUpdatedDefaultTeamRef.current)
106
+ return;
107
+ hasUpdatedDefaultTeamRef.current = true;
105
108
  const body = {
106
109
  teamInstanceSwitcherDefault: null,
107
110
  };
108
- console.log("patch called inside handleNoTeamsToSelect");
109
111
  await mutateUserProfile({ baseServicesUrl, body });
110
112
  };
111
113
  if (userHasTeams) {
112
114
  if (!userTeamInstanceSwitcherDefault) {
113
115
  if (userHasPersonalTeam) {
114
- console.log("userHasPersonalTeam", personalTeam[0]);
115
116
  handleSelectTeam({ team: personalTeam[0] });
116
117
  }
117
118
  else if (userHasAccountTeams) {
118
119
  const sortedAccounts = sortBy__default.default(accountTeams, [
119
120
  (account) => (account.displayName ? account.displayName : account.name),
120
121
  ]);
121
- console.log("userHasAccountTeams", sortedAccounts[0]);
122
122
  handleSelectTeam({ team: sortedAccounts[0] });
123
123
  }
124
124
  else if (userHasStandardTeams) {
125
125
  const sortedStandardTeams = sortBy__default.default(standardTeams, [
126
126
  (standardTeam) => (standardTeam.displayName ? standardTeam.displayName : standardTeam.name),
127
127
  ]);
128
- console.log("userHasStandardTeams", sortedStandardTeams[0]);
129
128
  handleSelectTeam({ team: sortedStandardTeams[0] });
130
129
  }
131
130
  }
@@ -140,7 +139,6 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
140
139
  }
141
140
  const allTeams = personalTeam.concat(standardTeams, accountTeams, allProjectTeams);
142
141
  const newSelectedTeam = allTeams.find((team) => team.id === userTeamInstanceSwitcherDefault);
143
- console.log("newSelectedTeam", newSelectedTeam);
144
142
  handleSelectTeam({ team: newSelectedTeam });
145
143
  }
146
144
  // if teams data loaded but there are no teams
@@ -138,6 +138,15 @@ function AdvantageSideNav(props) {
138
138
  };
139
139
  const chatSideNavLink = (React.createElement(SideNavLink, { "data-testid": "sidenav-chat-link", className: !enableChatButton ? `${prefix}--bmrg-advantage-sidenav__inactive-link` : "", disabled: Boolean(!enableChatButton), renderIcon: ChatBot, href: enableChatButton && chatLink, onClick: enableChatButton ? handleChatClick : (e) => e.preventDefault() }, "Chat"));
140
140
  const showSecondDivider = showChatButton || toolsLink || agentAssistantStudioLink || agentAssistantLibraryLink || documentCollectionsLink;
141
+ const navigateInternal = (url) => {
142
+ const target = new URL(url, window.location.origin);
143
+ if (target.origin === window.location.origin) {
144
+ history.push(target.pathname + target.search + target.hash);
145
+ }
146
+ else {
147
+ window.location.href = url;
148
+ }
149
+ };
141
150
  return (React.createElement(SideNav, { "aria-label": "sidenav-container", className: cx(`${prefix}--bmrg-advantage-sidenav-container`, className, {
142
151
  "--closed": !isMenuOpen,
143
152
  }), "data-testid": "sidenav-container", isRail: true, expanded: isMenuOpen, onMouseEnter: () => setActiveMenu(true), onMouseLeave: () => {
@@ -191,15 +200,27 @@ function AdvantageSideNav(props) {
191
200
  // (agentStudioPath && windowLocation.href.includes(`/launchpad${agentStudioPath}`)) ||
192
201
  // (agenticAppsPath && windowLocation.href.includes(`/launchpad${agenticAppsPath}`))
193
202
  // }
194
- className: `${prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink), renderIcon: IntentRequestCreate, href: agentAssistantStudioLink }, "Agent & Assistant Studio")) : null,
195
- agentAssistantLibraryLink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-agent-assistant-library-link", renderIcon: Folders, href: agentAssistantLibraryLink, className: `${prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink) }, "Agent & Assistant Library")) : null,
196
- documentCollectionsLink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-document-collections-link", renderIcon: DocumentMultiple_02, href: documentCollectionsLink, className: `${prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink) }, "Document Collections")) : null,
203
+ className: `${prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink), renderIcon: IntentRequestCreate }, "Agent & Assistant Studio")) : null,
204
+ agentAssistantLibraryLink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-agent-assistant-library-link", renderIcon: Folders,
205
+ //href={agentAssistantLibraryLink}
206
+ className: `${prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink) }, "Agent & Assistant Library")) : null,
207
+ documentCollectionsLink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-document-collections-link", renderIcon: DocumentMultiple_02,
208
+ //href={documentCollectionsLink}
209
+ className: `${prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink) }, "Document Collections")) : null,
197
210
  showSecondDivider ? React.createElement(SideNavDivider, null) : null,
198
- catalogNavlink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-catalog-link", isActive: windowLocation.href.includes(`${baseEnvUrl}/catalog`), href: catalogNavlink, renderIcon: Catalog }, "Catalog")) : null,
199
- settingsLink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-settings-link", renderIcon: Settings, href: settingsLink, onClick: (e) => {
211
+ catalogNavlink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-catalog-link", isActive: windowLocation.href.includes(`${baseEnvUrl}/catalog`), renderIcon: Catalog, onClick: (e) => {
212
+ e.preventDefault();
213
+ navigateInternal(catalogNavlink);
214
+ } }, "Catalog")) : null,
215
+ settingsLink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-settings-link", renderIcon: Settings,
216
+ // href={settingsLink}
217
+ className: `${prefix}--bmrg-advantage-sidenav__inactive-link` , disabled: Boolean(!AssistantStudioLink), onClick: (e) => {
200
218
  handleSettingsClick();
201
219
  } }, "Settings")) : null,
202
- adminNavlink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-admin-link", href: adminNavlink, renderIcon: LicenseThirdParty }, "Admin")) : null),
220
+ adminNavlink ? (React.createElement(SideNavLink, { "data-testid": "sidenav-admin-link", renderIcon: LicenseThirdParty, onClick: (e) => {
221
+ e.preventDefault();
222
+ navigateInternal(adminNavlink);
223
+ } }, "Admin")) : null),
203
224
  children ? (React.createElement(React.Fragment, null,
204
225
  React.createElement(SideNavDivider, null),
205
226
  children)) : null)));
@@ -44,7 +44,7 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
44
44
  const showSelectTeamPurpose = navigationPlatform?.requireTeamPurpose;
45
45
  const createTeamButtonText = showSelectTeamPurpose ? "Create Team" : "Create or Join Team";
46
46
  const userTeamInstanceSwitcherDefault = user?.teamInstanceSwitcherDefault;
47
- console.log("userTeamInstanceSwitcherDefault", userTeamInstanceSwitcherDefault);
47
+ const hasUpdatedDefaultTeamRef = React.useRef(false);
48
48
  const teamLink = ({ teamId }) => {
49
49
  return `${navigationPlatform.baseEnvUrl}/launchpad/teams/${teamId}`;
50
50
  };
@@ -82,41 +82,40 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
82
82
  const userHasStandardTeams = standardTeams.length > 0;
83
83
  const userHasTeams = userHasPersonalTeam || userHasAccountTeams || userHasStandardTeams;
84
84
  const handleSelectTeam = async ({ team }) => {
85
- console.log("handle select team", team);
86
85
  setSelectedTeam(team);
87
- if (!userTeamInstanceSwitcherDefault) {
86
+ if (!userTeamInstanceSwitcherDefault &&
87
+ !hasUpdatedDefaultTeamRef.current) {
88
+ hasUpdatedDefaultTeamRef.current = true;
88
89
  const body = {
89
90
  teamInstanceSwitcherDefault: team.id,
90
91
  };
91
- console.log("profile patch called", team);
92
92
  await mutateUserProfile({ baseServicesUrl, body });
93
93
  }
94
94
  };
95
95
  const handleNoTeamsToSelect = async () => {
96
+ if (hasUpdatedDefaultTeamRef.current)
97
+ return;
98
+ hasUpdatedDefaultTeamRef.current = true;
96
99
  const body = {
97
100
  teamInstanceSwitcherDefault: null,
98
101
  };
99
- console.log("patch called inside handleNoTeamsToSelect");
100
102
  await mutateUserProfile({ baseServicesUrl, body });
101
103
  };
102
104
  if (userHasTeams) {
103
105
  if (!userTeamInstanceSwitcherDefault) {
104
106
  if (userHasPersonalTeam) {
105
- console.log("userHasPersonalTeam", personalTeam[0]);
106
107
  handleSelectTeam({ team: personalTeam[0] });
107
108
  }
108
109
  else if (userHasAccountTeams) {
109
110
  const sortedAccounts = sortBy(accountTeams, [
110
111
  (account) => (account.displayName ? account.displayName : account.name),
111
112
  ]);
112
- console.log("userHasAccountTeams", sortedAccounts[0]);
113
113
  handleSelectTeam({ team: sortedAccounts[0] });
114
114
  }
115
115
  else if (userHasStandardTeams) {
116
116
  const sortedStandardTeams = sortBy(standardTeams, [
117
117
  (standardTeam) => (standardTeam.displayName ? standardTeam.displayName : standardTeam.name),
118
118
  ]);
119
- console.log("userHasStandardTeams", sortedStandardTeams[0]);
120
119
  handleSelectTeam({ team: sortedStandardTeams[0] });
121
120
  }
122
121
  }
@@ -131,7 +130,6 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
131
130
  }
132
131
  const allTeams = personalTeam.concat(standardTeams, accountTeams, allProjectTeams);
133
132
  const newSelectedTeam = allTeams.find((team) => team.id === userTeamInstanceSwitcherDefault);
134
- console.log("newSelectedTeam", newSelectedTeam);
135
133
  handleSelectTeam({ team: newSelectedTeam });
136
134
  }
137
135
  // if teams data loaded but there are no teams
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.21-beta.33",
4
+ "version": "4.6.21-beta.35",
5
5
  "author": {
6
6
  "name": "Tim Bula",
7
7
  "email": "timrbula@gmail.com"