@boomerang-io/carbon-addons-boomerang-react 4.6.21-beta.24 → 4.6.21-beta.25
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/dist/cjs/components/Header/Header.js +2 -3
- package/dist/cjs/components/Header/HeaderTeamSwitcher.js +44 -63
- package/dist/cjs/components/ProfileSettings/ProfileSettings.js +3 -3
- package/dist/cjs/components/UIShell/UIShell.js +3 -3
- package/dist/esm/components/Header/Header.js +2 -3
- package/dist/esm/components/Header/HeaderTeamSwitcher.js +44 -63
- package/dist/esm/components/ProfileSettings/ProfileSettings.js +3 -3
- package/dist/esm/components/UIShell/UIShell.js +3 -3
- package/dist/types/index.d.ts +1 -3
- package/package.json +1 -1
- package/dist/cjs/constants/TeamTypes.js +0 -15
- package/dist/esm/constants/TeamTypes.js +0 -13
|
@@ -62,7 +62,7 @@ const MenuAriaLabelRecord = {
|
|
|
62
62
|
const headerButtonClassNames = "cds--btn--icon-only cds--header__action cds--btn cds--btn--primary cds--btn--icon-only cds--btn cds--btn--primary";
|
|
63
63
|
const instanceCheckMarkContainerClass = "instance-checkmark-style-container";
|
|
64
64
|
function Header(props) {
|
|
65
|
-
const { analyticsHelpers, productName, baseEnvUrl, baseServicesUrl, carbonTheme = "g10", className, createJoinTeamTrigger,
|
|
65
|
+
const { analyticsHelpers, productName, baseEnvUrl, baseServicesUrl, carbonTheme = "g10", className, createJoinTeamTrigger, history, isLaunchpad = false, isLoadingTeamSwitcher, isSuccessTeamSwitcher, setIsSuccessTeamSwitcher, navLinks, platform, prefixName = "", refetchUser, refetchNavigation, rightPanel, skipToContentProps, templateMeteringEvent, trackEvent, triggerEvent, user, userTeams, userTeamsAssets, } = props;
|
|
66
66
|
const hasUserTeams = Boolean(userTeams);
|
|
67
67
|
const userTeamsUrl = servicesConfig.serviceUrl.getUserTeamsServices({ baseServicesUrl });
|
|
68
68
|
const teamsQuery = reactQuery.useQuery({
|
|
@@ -70,7 +70,6 @@ function Header(props) {
|
|
|
70
70
|
queryFn: servicesConfig.resolver.query(userTeamsUrl, null),
|
|
71
71
|
enabled: !hasUserTeams && Boolean(baseServicesUrl),
|
|
72
72
|
});
|
|
73
|
-
const showTeamSwitcher = enableTeamSwitcher && Boolean(user);
|
|
74
73
|
return (React__default.default.createElement(React__default.default.Fragment, null,
|
|
75
74
|
React__default.default.createElement(react.Theme, { theme: carbonTheme },
|
|
76
75
|
React__default.default.createElement(react.Header, { "aria-label": "App navigation header", className: className },
|
|
@@ -81,7 +80,7 @@ function Header(props) {
|
|
|
81
80
|
? navLinks.map((link) => (React__default.default.createElement(react.HeaderMenuItem, { "aria-label": `Link for ${link.name}`, "data-testid": "header-menu-link", href: link.url, isCurrentPage: window?.location?.href && link.url ? window.location.href.startsWith(link.url) : false, key: link.name, target: link.isExternal ? "_blank" : undefined, rel: link.isExternal ? "noopener noreferrer" : undefined }, link.name)))
|
|
82
81
|
: null),
|
|
83
82
|
React__default.default.createElement(react.HeaderGlobalBar, null,
|
|
84
|
-
|
|
83
|
+
React__default.default.createElement(HeaderTeamSwitcher.default, { analyticsHelpers: analyticsHelpers, baseServicesUrl: baseServicesUrl, createJoinTeamTrigger: createJoinTeamTrigger, history: history, isLaunchpad: isLaunchpad, isLoadingTeamSwitcher: isLoadingTeamSwitcher, isSuccessTeamSwitcher: isSuccessTeamSwitcher, setIsSuccessTeamSwitcher: setIsSuccessTeamSwitcher, menuAriaLabelRecord: MenuAriaLabelRecord.TeamSwitcher, menuButtonId: MenuButtonId.TeamSwitcher, menuListId: MenuListId.TeamSwitcher, navigationPlatform: platform, refetchUser: refetchUser, refetchNavigation: refetchNavigation, teamsQuery: teamsQuery, trackEvent: trackEvent, user: user, userTeams: userTeams }),
|
|
85
84
|
props?.instanceSwitcherEnabled && (React__default.default.createElement(InstanceSwitcherMenu, { enabled: Boolean(props.instanceSwitcherEnabled), menuItems: platform?.instances })),
|
|
86
85
|
React__default.default.createElement(RequestsMenu, { baseEnvUrl: baseEnvUrl, enabled: Boolean(props.requestSummary), summary: props.requestSummary }),
|
|
87
86
|
React__default.default.createElement(NotificationsMenu, { baseEnvUrl: baseEnvUrl, baseServicesUrl: baseServicesUrl, enabled: Boolean(props.enableNotifications), countEnabled: Boolean(props.enableNotificationsCount) }),
|
|
@@ -11,7 +11,6 @@ var HeaderMenu = require('./HeaderMenu.js');
|
|
|
11
11
|
var servicesConfig = require('../../config/servicesConfig.js');
|
|
12
12
|
var settings = require('../../internal/settings.js');
|
|
13
13
|
var UserType = require('../../constants/UserType.js');
|
|
14
|
-
var TeamTypes = require('../../constants/TeamTypes.js');
|
|
15
14
|
|
|
16
15
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
17
16
|
|
|
@@ -148,9 +147,6 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
148
147
|
teamsQuery?.data?.personalTeam?.length === 0))) {
|
|
149
148
|
handleNoTeamsToSelect();
|
|
150
149
|
}
|
|
151
|
-
else if (userTeamInstanceSwitcherDefault === null) {
|
|
152
|
-
setSelectedTeam(null);
|
|
153
|
-
}
|
|
154
150
|
}, [
|
|
155
151
|
baseServicesUrl,
|
|
156
152
|
hasUserTeams,
|
|
@@ -227,58 +223,33 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
227
223
|
standardTeams = teamsQuery?.data?.standardTeams ?? [];
|
|
228
224
|
personalTeam = teamsQuery?.data?.personalTeam ?? [];
|
|
229
225
|
}
|
|
230
|
-
let
|
|
231
|
-
|
|
232
|
-
...personalTeam,
|
|
233
|
-
type: TeamTypes.TEAM_TYPES.PERSONAL,
|
|
234
|
-
nameToDisplay: personalTeam.displayName ? personalTeam.displayName : personalTeam.name,
|
|
235
|
-
}))
|
|
236
|
-
: [];
|
|
237
|
-
let newAccountTeams = [];
|
|
238
|
-
let newStandardTeams = [];
|
|
226
|
+
let sortedAccountTeamsWithNamesToDisplay = [];
|
|
227
|
+
let sortedStandardTeamsWithNamesToDisplay = [];
|
|
239
228
|
if (accountTeams?.length > 0) {
|
|
240
|
-
newAccountTeams = accountTeams.map((team) => {
|
|
229
|
+
const newAccountTeams = accountTeams.map((team) => {
|
|
241
230
|
let newProjectTeams = [];
|
|
242
231
|
if (team.projectTeams && team.projectTeams.length > 0) {
|
|
243
|
-
newProjectTeams = team.projectTeams?.map((
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
};
|
|
248
|
-
});
|
|
232
|
+
newProjectTeams = team.projectTeams?.map((team) => ({
|
|
233
|
+
...team,
|
|
234
|
+
nameToDisplay: team.displayName ? team.displayName : team.name,
|
|
235
|
+
}));
|
|
249
236
|
}
|
|
250
237
|
return {
|
|
251
238
|
...team,
|
|
252
239
|
nameToDisplay: team.displayName ? team.displayName : team.name,
|
|
253
|
-
type: TeamTypes.TEAM_TYPES.ACCOUNT,
|
|
254
240
|
projectTeams: sortBy__default.default(newProjectTeams, ["nameToDisplay"]),
|
|
255
241
|
};
|
|
256
242
|
});
|
|
243
|
+
sortedAccountTeamsWithNamesToDisplay = sortBy__default.default(newAccountTeams, ["nameToDisplay"]);
|
|
257
244
|
}
|
|
258
245
|
if (standardTeams?.length > 0) {
|
|
259
|
-
newStandardTeams = standardTeams.map((team) => {
|
|
246
|
+
const newStandardTeams = standardTeams.map((team) => {
|
|
260
247
|
return {
|
|
261
248
|
...team,
|
|
262
|
-
type: TeamTypes.TEAM_TYPES.STANDARD,
|
|
263
249
|
nameToDisplay: team.displayName ? team.displayName : team.name,
|
|
264
250
|
};
|
|
265
251
|
});
|
|
266
|
-
|
|
267
|
-
let allTeams = newPersonalTeam.concat(newAccountTeams, newStandardTeams);
|
|
268
|
-
const order = { [TeamTypes.TEAM_TYPES.PERSONAL]: 1, [TeamTypes.TEAM_TYPES.ACCOUNT]: 2, [TeamTypes.TEAM_TYPES.STANDARD]: 3 };
|
|
269
|
-
allTeams = sortBy__default.default(allTeams, [(team) => order[team.type], "nameToDisplay"]);
|
|
270
|
-
if (selectedTeam) {
|
|
271
|
-
const selectedTeamIndex = allTeams.findIndex((team, index) => {
|
|
272
|
-
if (team.id === selectedTeam.id) {
|
|
273
|
-
return true;
|
|
274
|
-
}
|
|
275
|
-
else if (Array.isArray(team.projectTeams) && team.projectTeams?.length > 0) {
|
|
276
|
-
return team.projectTeams.some((projectTeam) => projectTeam.id === selectedTeam.id);
|
|
277
|
-
}
|
|
278
|
-
return false;
|
|
279
|
-
});
|
|
280
|
-
const [removedTeam] = allTeams.splice(selectedTeamIndex, 1);
|
|
281
|
-
allTeams.unshift(removedTeam);
|
|
252
|
+
sortedStandardTeamsWithNamesToDisplay = sortBy__default.default(newStandardTeams, ["nameToDisplay"]);
|
|
282
253
|
}
|
|
283
254
|
let selectedTeamName = selectedTeam?.displayName
|
|
284
255
|
? selectedTeam.displayName
|
|
@@ -300,22 +271,29 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
300
271
|
React__default.default.createElement("div", { className: headerTeamSwitcherCreateTeamButtonClassname },
|
|
301
272
|
React__default.default.createElement("span", { className: headerTeamSwitcherCreateTeamButtonTextClassname }, createTeamButtonText),
|
|
302
273
|
React__default.default.createElement(icons.AddAlt, { className: headerTeamSwitcherCreateTeamButtonIconClassname })))),
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
274
|
+
personalTeam.length > 0
|
|
275
|
+
? personalTeam.map((team) => {
|
|
276
|
+
const teamName = team.displayName ? team.displayName : team.name;
|
|
277
|
+
const isTeamSelected = team.id === selectedTeam?.id;
|
|
278
|
+
return (React__default.default.createElement("div", { key: team.id, id: `${team.id}-personal-menu-item-id` },
|
|
279
|
+
React__default.default.createElement(react.HeaderMenuItem, { key: team.id, id: `${team.id}-personal-menu-item`, "aria-selected": isTeamSelected, className: headerDropdownMenuItemContainerClassname, onClick: () => {
|
|
280
|
+
handleTeamClick({ team, type: "personal" });
|
|
281
|
+
},
|
|
282
|
+
// eslint-disable-next-line no-script-url
|
|
283
|
+
href: "javascript:void(0)", "data-testid": "header-team-switcher-menu-item" },
|
|
284
|
+
React__default.default.createElement("div", { className: headerDropdownMenuItemClassname },
|
|
285
|
+
React__default.default.createElement("span", { title: teamName, className: headerDropdownMenuItemTextClassname }, teamName),
|
|
286
|
+
isTeamSelected ? React__default.default.createElement(icons.CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null))));
|
|
287
|
+
})
|
|
288
|
+
: null,
|
|
289
|
+
accountTeams.length > 0
|
|
290
|
+
? sortedAccountTeamsWithNamesToDisplay.map((team) => {
|
|
306
291
|
const isSubmenuOpen = team.id === openAccountSubmenuId;
|
|
307
|
-
const
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
selectedProjectTeamIndex = projectTeams.findIndex((team) => team.id === selectedTeam?.id);
|
|
312
|
-
}
|
|
313
|
-
const isProjectTeamSelected = selectedProjectTeamIndex >= 0;
|
|
292
|
+
const isProjectTeamSelected = team.projectTeams &&
|
|
293
|
+
team.projectTeams.length > 0 &&
|
|
294
|
+
team.projectTeams.some((team) => team.id === selectedTeam?.id);
|
|
295
|
+
const isTeamSelected = team.id === selectedTeam?.id;
|
|
314
296
|
const isMenuSelected = isTeamSelected || isProjectTeamSelected;
|
|
315
|
-
if (existProjectTeams && isProjectTeamSelected) {
|
|
316
|
-
const [removedTeam] = projectTeams.splice(selectedProjectTeamIndex, 1);
|
|
317
|
-
projectTeams.unshift(removedTeam);
|
|
318
|
-
}
|
|
319
297
|
return (React__default.default.createElement("div", { key: team.id, id: `${team.id}-account-menu` },
|
|
320
298
|
React__default.default.createElement(react.HeaderMenuItem, { "aria-expanded": isSubmenuOpen, "aria-selected": isMenuSelected, className: headerDropdownMenuItemAccountContainerClassname, onClick: (e) => handleOpenAccountSubmenu({ e, id: team.id }),
|
|
321
299
|
// eslint-disable-next-line no-script-url
|
|
@@ -323,7 +301,7 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
323
301
|
React__default.default.createElement("div", { className: headerDropdownMenuItemAccountClassname },
|
|
324
302
|
React__default.default.createElement("div", { className: headerDropdownMenuItemTextIconClassname },
|
|
325
303
|
React__default.default.createElement("span", { title: team.nameToDisplay, className: headerDropdownMenuItemTextClassname }, team.nameToDisplay),
|
|
326
|
-
isMenuSelected ? React__default.default.createElement(icons.CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null),
|
|
304
|
+
isMenuSelected ? (React__default.default.createElement(icons.CheckmarkFilled, { className: headerDropdownMenuItemIconClassname })) : null),
|
|
327
305
|
React__default.default.createElement("div", { className: headerDropdownMenuItemAccountIconsClassname },
|
|
328
306
|
React__default.default.createElement(icons.GroupAccount, { className: headerDropdownMenuItemAccountGroupIconClassname }),
|
|
329
307
|
React__default.default.createElement(icons.ChevronDown, { className: headerDropdownMenuItemAccountChevronIconClassname })))),
|
|
@@ -335,9 +313,9 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
335
313
|
href: "javascript:void(0)" },
|
|
336
314
|
React__default.default.createElement("div", { className: headerDropdownMenuItemClassname, style: { paddingLeft: "1rem" } },
|
|
337
315
|
React__default.default.createElement("span", { title: team.nameToDisplay, className: headerDropdownMenuItemTextClassname }, "Account Page"),
|
|
338
|
-
isTeamSelected ? React__default.default.createElement(icons.CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null)),
|
|
339
|
-
projectTeams && projectTeams.length > 0
|
|
340
|
-
? projectTeams.map((team) => {
|
|
316
|
+
isTeamSelected ? (React__default.default.createElement(icons.CheckmarkFilled, { className: headerDropdownMenuItemIconClassname })) : null)),
|
|
317
|
+
team.projectTeams && team.projectTeams.length > 0
|
|
318
|
+
? team.projectTeams.map((team) => {
|
|
341
319
|
const isTeamSelected = team.id === selectedTeam?.id;
|
|
342
320
|
return (React__default.default.createElement("div", { key: team.id, id: `${team.id}-project-menu-item` },
|
|
343
321
|
React__default.default.createElement(react.HeaderMenuItem, { "aria-selected": isTeamSelected, className: headerDropdownMenuItemContainerClassname, onClick: () => {
|
|
@@ -350,19 +328,22 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
350
328
|
isTeamSelected ? (React__default.default.createElement(icons.CheckmarkFilled, { className: headerDropdownMenuItemIconClassname })) : null))));
|
|
351
329
|
})
|
|
352
330
|
: null)));
|
|
353
|
-
}
|
|
354
|
-
|
|
355
|
-
|
|
331
|
+
})
|
|
332
|
+
: null,
|
|
333
|
+
standardTeams.length > 0
|
|
334
|
+
? sortedStandardTeamsWithNamesToDisplay.map((team) => {
|
|
335
|
+
const isTeamSelected = team.id === selectedTeam?.id;
|
|
336
|
+
return (React__default.default.createElement("div", { key: team.id, id: `${team.id}-standard-menu-item` },
|
|
356
337
|
React__default.default.createElement(react.HeaderMenuItem, { "aria-selected": isTeamSelected, className: headerDropdownMenuItemContainerClassname, onClick: () => {
|
|
357
|
-
handleTeamClick({ team, type:
|
|
338
|
+
handleTeamClick({ team, type: "standard" });
|
|
358
339
|
}, "data-testid": "header-team-switcher-menu-item",
|
|
359
340
|
// eslint-disable-next-line no-script-url
|
|
360
341
|
href: "javascript:void(0)" },
|
|
361
342
|
React__default.default.createElement("div", { className: headerDropdownMenuItemClassname },
|
|
362
343
|
React__default.default.createElement("span", { title: team.nameToDisplay, className: headerDropdownMenuItemTextClassname }, team.nameToDisplay),
|
|
363
344
|
isTeamSelected ? React__default.default.createElement(icons.CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null))));
|
|
364
|
-
}
|
|
365
|
-
|
|
345
|
+
})
|
|
346
|
+
: null))));
|
|
366
347
|
}
|
|
367
348
|
return null;
|
|
368
349
|
}
|
|
@@ -122,9 +122,9 @@ function ProfileSettings({ baseServicesUrl, refetchUser, refetchUserTeams, refet
|
|
|
122
122
|
return (React__default.default.createElement(react.ComposedModal, { "aria-label": "Profile Settings", className: `${settings.prefix}--bmrg-profile-settings-container ${settings.prefix}--bmrg-header-modal`, open: isOpen, onClose: handleClose, preventCloseOnClickOutside: true },
|
|
123
123
|
React__default.default.createElement(react.ModalHeader, { closeModal: handleClose, title: `User profile - ${userName}` }),
|
|
124
124
|
React__default.default.createElement(react.ModalBody, { style: { maxHeight: "31.5rem" } },
|
|
125
|
-
React__default.default.createElement("p", { className: `${settings.prefix}--bmrg-profile-settings__title` }, "More user profile settings will be here eventually, but for now you can choose which Teams are shown in your
|
|
126
|
-
React__default.default.createElement("h2", { className: `${settings.prefix}--bmrg-profile-settings__subtitle` }, "Teams visible in Launchpad
|
|
127
|
-
React__default.default.createElement("p", { className: `${settings.prefix}--bmrg-profile-settings__description` }, "Choose Teams to show or hide in your Launchpad
|
|
125
|
+
React__default.default.createElement("p", { className: `${settings.prefix}--bmrg-profile-settings__title` }, "More user profile settings will be here eventually, but for now you can choose which Teams are shown in your sidebar in Launchpad."),
|
|
126
|
+
React__default.default.createElement("h2", { className: `${settings.prefix}--bmrg-profile-settings__subtitle` }, "Teams visible in Launchpad sidebar"),
|
|
127
|
+
React__default.default.createElement("p", { className: `${settings.prefix}--bmrg-profile-settings__description` }, "Choose Teams to show or hide in your Launchpad sidebar and Catalog (useful for sensitive demos). You will not be able to access or view unchecked Teams from the sidebar, and cannot add items to them from Catalog."),
|
|
128
128
|
userIsLoading ? (React__default.default.createElement(react.StructuredListSkeleton, null)) : userError ? (React__default.default.createElement(ErrorMessage.default, { style: { color: "#F2F4F8", padding: "1rem" } })) : teams?.length > 0 ? (React__default.default.createElement(react.StructuredListWrapper, { className: `${settings.prefix}--bmrg-profile-settings-list` },
|
|
129
129
|
React__default.default.createElement(react.StructuredListHead, null,
|
|
130
130
|
React__default.default.createElement(react.StructuredListRow, { head: true },
|
|
@@ -26,11 +26,11 @@ IBM Confidential
|
|
|
26
26
|
694970X, 69497O0
|
|
27
27
|
© Copyright IBM Corp. 2022, 2024
|
|
28
28
|
*/
|
|
29
|
-
function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme = "g10", config, createJoinTeamTrigger,
|
|
29
|
+
function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme = "g10", config, createJoinTeamTrigger, history, isLaunchpad = false, isLoadingTeamSwitcher, isSuccessTeamSwitcher, setIsSuccessTeamSwitcher, leftPanel, platformName, productName, profileMenuItems = [], supportMenuItems = [], renderPrivacyRedirect = true, renderPrivacyStatement = true, rightPanel, handleShowTutorial, refetchUser, refetchUserTeams, refetchNavigation, skipToContentProps, templateMeteringEvent, trackEvent, triggerEvent, tutorialScreenToShow, user, userTeams, userTeamsAssets, enableIcaMacs, }) {
|
|
30
30
|
// Support base header .e.g for an error state
|
|
31
31
|
if (!config) {
|
|
32
32
|
return (React__default.default.createElement(reactQuery.QueryClientProvider, { client: servicesConfig.queryClient },
|
|
33
|
-
React__default.default.createElement(Header.default, { baseEnvUrl: baseEnvUrl ?? "", baseServicesUrl: "", carbonTheme: carbonTheme, enableAppSwitcher: false, enableNotifications: false, enableNotificationsCount: false,
|
|
33
|
+
React__default.default.createElement(Header.default, { baseEnvUrl: baseEnvUrl ?? "", baseServicesUrl: "", carbonTheme: carbonTheme, enableAppSwitcher: false, enableNotifications: false, enableNotificationsCount: false, productName: productName || platformName || "", user: user })));
|
|
34
34
|
}
|
|
35
35
|
const { features, navigation, platform, platformMessage } = config;
|
|
36
36
|
const names = getProductAndPlatformNames({ productName, platformName, platform });
|
|
@@ -71,7 +71,7 @@ function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme = "g10", config, cr
|
|
|
71
71
|
*/
|
|
72
72
|
const isPrivacyStatementDisabled = renderPrivacyStatement === false || features?.["consent.enabled"] === false;
|
|
73
73
|
return (React__default.default.createElement(reactQuery.QueryClientProvider, { client: servicesConfig.queryClient },
|
|
74
|
-
React__default.default.createElement(Header.default, { analyticsHelpers: analyticsHelpers, baseEnvUrl: platform.baseEnvUrl, baseServicesUrl: platform.baseServicesUrl, carbonTheme: carbonTheme, createJoinTeamTrigger: createJoinTeamTrigger, enableAppSwitcher: isAppSwitcherEnabled, instanceSwitcherEnabled: instanceSwitcherEnabled, enableNotifications: isNotificationsEnabled, enableNotificationsCount: isNotificationsCountEnabled,
|
|
74
|
+
React__default.default.createElement(Header.default, { analyticsHelpers: analyticsHelpers, baseEnvUrl: platform.baseEnvUrl, baseServicesUrl: platform.baseServicesUrl, carbonTheme: carbonTheme, createJoinTeamTrigger: createJoinTeamTrigger, enableAppSwitcher: isAppSwitcherEnabled, instanceSwitcherEnabled: instanceSwitcherEnabled, enableNotifications: isNotificationsEnabled, enableNotificationsCount: isNotificationsCountEnabled, leftPanel: leftPanel, navLinks: navigation, platform: platform, platformMessage: platformMessage, prefixName: names.platformName, productName: names.productName, rightPanel: rightPanel, requestSummary: user?.requestSummary, skipToContentProps: skipToContentProps, templateMeteringEvent: templateMeteringEvent, triggerEvent: triggerEvent, profileMenuItems: [
|
|
75
75
|
isUserEnabled && (React__default.default.createElement(ProfileSettings.ProfileSettingsMenuItem, { key: "profile-settings", baseServicesUrl: platform.baseServicesUrl, src: `${platform.baseServicesUrl}/users/image/${user?.email}`, userName: user?.displayName ?? user?.name, refetchUser: refetchUser, refetchUserTeams: refetchUserTeams, refetchNavigation: refetchNavigation })),
|
|
76
76
|
isSendMailEnabled && (React__default.default.createElement(HeaderMenuItem.default, { key: "email-preferences", href: `${platform.baseEnvUrl}/launchpad/email-preferences`, icon: React__default.default.createElement(icons.Email, null), kind: "internal", text: "Email Preferences", type: "link" })),
|
|
77
77
|
!isPrivacyStatementDisabled && (React__default.default.createElement(PrivacyStatement.PrivacyStatementMenuItem, { key: "privacy-statement", baseServicesUrl: platform.baseServicesUrl, platformEmail: platform?.platformEmail })),
|
|
@@ -54,7 +54,7 @@ const MenuAriaLabelRecord = {
|
|
|
54
54
|
const headerButtonClassNames = "cds--btn--icon-only cds--header__action cds--btn cds--btn--primary cds--btn--icon-only cds--btn cds--btn--primary";
|
|
55
55
|
const instanceCheckMarkContainerClass = "instance-checkmark-style-container";
|
|
56
56
|
function Header(props) {
|
|
57
|
-
const { analyticsHelpers, productName, baseEnvUrl, baseServicesUrl, carbonTheme = "g10", className, createJoinTeamTrigger,
|
|
57
|
+
const { analyticsHelpers, productName, baseEnvUrl, baseServicesUrl, carbonTheme = "g10", className, createJoinTeamTrigger, history, isLaunchpad = false, isLoadingTeamSwitcher, isSuccessTeamSwitcher, setIsSuccessTeamSwitcher, navLinks, platform, prefixName = "", refetchUser, refetchNavigation, rightPanel, skipToContentProps, templateMeteringEvent, trackEvent, triggerEvent, user, userTeams, userTeamsAssets, } = props;
|
|
58
58
|
const hasUserTeams = Boolean(userTeams);
|
|
59
59
|
const userTeamsUrl = serviceUrl.getUserTeamsServices({ baseServicesUrl });
|
|
60
60
|
const teamsQuery = useQuery({
|
|
@@ -62,7 +62,6 @@ function Header(props) {
|
|
|
62
62
|
queryFn: resolver.query(userTeamsUrl, null),
|
|
63
63
|
enabled: !hasUserTeams && Boolean(baseServicesUrl),
|
|
64
64
|
});
|
|
65
|
-
const showTeamSwitcher = enableTeamSwitcher && Boolean(user);
|
|
66
65
|
return (React.createElement(React.Fragment, null,
|
|
67
66
|
React.createElement(Theme, { theme: carbonTheme },
|
|
68
67
|
React.createElement(Header$1, { "aria-label": "App navigation header", className: className },
|
|
@@ -73,7 +72,7 @@ function Header(props) {
|
|
|
73
72
|
? navLinks.map((link) => (React.createElement(HeaderMenuItem, { "aria-label": `Link for ${link.name}`, "data-testid": "header-menu-link", href: link.url, isCurrentPage: window?.location?.href && link.url ? window.location.href.startsWith(link.url) : false, key: link.name, target: link.isExternal ? "_blank" : undefined, rel: link.isExternal ? "noopener noreferrer" : undefined }, link.name)))
|
|
74
73
|
: null),
|
|
75
74
|
React.createElement(HeaderGlobalBar, null,
|
|
76
|
-
|
|
75
|
+
React.createElement(HeaderTeamSwitcher, { analyticsHelpers: analyticsHelpers, baseServicesUrl: baseServicesUrl, createJoinTeamTrigger: createJoinTeamTrigger, history: history, isLaunchpad: isLaunchpad, isLoadingTeamSwitcher: isLoadingTeamSwitcher, isSuccessTeamSwitcher: isSuccessTeamSwitcher, setIsSuccessTeamSwitcher: setIsSuccessTeamSwitcher, menuAriaLabelRecord: MenuAriaLabelRecord.TeamSwitcher, menuButtonId: MenuButtonId.TeamSwitcher, menuListId: MenuListId.TeamSwitcher, navigationPlatform: platform, refetchUser: refetchUser, refetchNavigation: refetchNavigation, teamsQuery: teamsQuery, trackEvent: trackEvent, user: user, userTeams: userTeams }),
|
|
77
76
|
props?.instanceSwitcherEnabled && (React.createElement(InstanceSwitcherMenu, { enabled: Boolean(props.instanceSwitcherEnabled), menuItems: platform?.instances })),
|
|
78
77
|
React.createElement(RequestsMenu, { baseEnvUrl: baseEnvUrl, enabled: Boolean(props.requestSummary), summary: props.requestSummary }),
|
|
79
78
|
React.createElement(NotificationsMenu, { baseEnvUrl: baseEnvUrl, baseServicesUrl: baseServicesUrl, enabled: Boolean(props.enableNotifications), countEnabled: Boolean(props.enableNotificationsCount) }),
|
|
@@ -7,7 +7,6 @@ import HeaderMenu$1 from './HeaderMenu.js';
|
|
|
7
7
|
import { resolver } from '../../config/servicesConfig.js';
|
|
8
8
|
import { prefix } from '../../internal/settings.js';
|
|
9
9
|
import { USER_PLATFORM_ROLE } from '../../constants/UserType.js';
|
|
10
|
-
import { TEAM_TYPES } from '../../constants/TeamTypes.js';
|
|
11
10
|
|
|
12
11
|
/*
|
|
13
12
|
IBM Confidential
|
|
@@ -139,9 +138,6 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
139
138
|
teamsQuery?.data?.personalTeam?.length === 0))) {
|
|
140
139
|
handleNoTeamsToSelect();
|
|
141
140
|
}
|
|
142
|
-
else if (userTeamInstanceSwitcherDefault === null) {
|
|
143
|
-
setSelectedTeam(null);
|
|
144
|
-
}
|
|
145
141
|
}, [
|
|
146
142
|
baseServicesUrl,
|
|
147
143
|
hasUserTeams,
|
|
@@ -218,58 +214,33 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
218
214
|
standardTeams = teamsQuery?.data?.standardTeams ?? [];
|
|
219
215
|
personalTeam = teamsQuery?.data?.personalTeam ?? [];
|
|
220
216
|
}
|
|
221
|
-
let
|
|
222
|
-
|
|
223
|
-
...personalTeam,
|
|
224
|
-
type: TEAM_TYPES.PERSONAL,
|
|
225
|
-
nameToDisplay: personalTeam.displayName ? personalTeam.displayName : personalTeam.name,
|
|
226
|
-
}))
|
|
227
|
-
: [];
|
|
228
|
-
let newAccountTeams = [];
|
|
229
|
-
let newStandardTeams = [];
|
|
217
|
+
let sortedAccountTeamsWithNamesToDisplay = [];
|
|
218
|
+
let sortedStandardTeamsWithNamesToDisplay = [];
|
|
230
219
|
if (accountTeams?.length > 0) {
|
|
231
|
-
newAccountTeams = accountTeams.map((team) => {
|
|
220
|
+
const newAccountTeams = accountTeams.map((team) => {
|
|
232
221
|
let newProjectTeams = [];
|
|
233
222
|
if (team.projectTeams && team.projectTeams.length > 0) {
|
|
234
|
-
newProjectTeams = team.projectTeams?.map((
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
};
|
|
239
|
-
});
|
|
223
|
+
newProjectTeams = team.projectTeams?.map((team) => ({
|
|
224
|
+
...team,
|
|
225
|
+
nameToDisplay: team.displayName ? team.displayName : team.name,
|
|
226
|
+
}));
|
|
240
227
|
}
|
|
241
228
|
return {
|
|
242
229
|
...team,
|
|
243
230
|
nameToDisplay: team.displayName ? team.displayName : team.name,
|
|
244
|
-
type: TEAM_TYPES.ACCOUNT,
|
|
245
231
|
projectTeams: sortBy(newProjectTeams, ["nameToDisplay"]),
|
|
246
232
|
};
|
|
247
233
|
});
|
|
234
|
+
sortedAccountTeamsWithNamesToDisplay = sortBy(newAccountTeams, ["nameToDisplay"]);
|
|
248
235
|
}
|
|
249
236
|
if (standardTeams?.length > 0) {
|
|
250
|
-
newStandardTeams = standardTeams.map((team) => {
|
|
237
|
+
const newStandardTeams = standardTeams.map((team) => {
|
|
251
238
|
return {
|
|
252
239
|
...team,
|
|
253
|
-
type: TEAM_TYPES.STANDARD,
|
|
254
240
|
nameToDisplay: team.displayName ? team.displayName : team.name,
|
|
255
241
|
};
|
|
256
242
|
});
|
|
257
|
-
|
|
258
|
-
let allTeams = newPersonalTeam.concat(newAccountTeams, newStandardTeams);
|
|
259
|
-
const order = { [TEAM_TYPES.PERSONAL]: 1, [TEAM_TYPES.ACCOUNT]: 2, [TEAM_TYPES.STANDARD]: 3 };
|
|
260
|
-
allTeams = sortBy(allTeams, [(team) => order[team.type], "nameToDisplay"]);
|
|
261
|
-
if (selectedTeam) {
|
|
262
|
-
const selectedTeamIndex = allTeams.findIndex((team, index) => {
|
|
263
|
-
if (team.id === selectedTeam.id) {
|
|
264
|
-
return true;
|
|
265
|
-
}
|
|
266
|
-
else if (Array.isArray(team.projectTeams) && team.projectTeams?.length > 0) {
|
|
267
|
-
return team.projectTeams.some((projectTeam) => projectTeam.id === selectedTeam.id);
|
|
268
|
-
}
|
|
269
|
-
return false;
|
|
270
|
-
});
|
|
271
|
-
const [removedTeam] = allTeams.splice(selectedTeamIndex, 1);
|
|
272
|
-
allTeams.unshift(removedTeam);
|
|
243
|
+
sortedStandardTeamsWithNamesToDisplay = sortBy(newStandardTeams, ["nameToDisplay"]);
|
|
273
244
|
}
|
|
274
245
|
let selectedTeamName = selectedTeam?.displayName
|
|
275
246
|
? selectedTeam.displayName
|
|
@@ -291,22 +262,29 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
291
262
|
React.createElement("div", { className: headerTeamSwitcherCreateTeamButtonClassname },
|
|
292
263
|
React.createElement("span", { className: headerTeamSwitcherCreateTeamButtonTextClassname }, createTeamButtonText),
|
|
293
264
|
React.createElement(AddAlt, { className: headerTeamSwitcherCreateTeamButtonIconClassname })))),
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
265
|
+
personalTeam.length > 0
|
|
266
|
+
? personalTeam.map((team) => {
|
|
267
|
+
const teamName = team.displayName ? team.displayName : team.name;
|
|
268
|
+
const isTeamSelected = team.id === selectedTeam?.id;
|
|
269
|
+
return (React.createElement("div", { key: team.id, id: `${team.id}-personal-menu-item-id` },
|
|
270
|
+
React.createElement(HeaderMenuItem, { key: team.id, id: `${team.id}-personal-menu-item`, "aria-selected": isTeamSelected, className: headerDropdownMenuItemContainerClassname, onClick: () => {
|
|
271
|
+
handleTeamClick({ team, type: "personal" });
|
|
272
|
+
},
|
|
273
|
+
// eslint-disable-next-line no-script-url
|
|
274
|
+
href: "javascript:void(0)", "data-testid": "header-team-switcher-menu-item" },
|
|
275
|
+
React.createElement("div", { className: headerDropdownMenuItemClassname },
|
|
276
|
+
React.createElement("span", { title: teamName, className: headerDropdownMenuItemTextClassname }, teamName),
|
|
277
|
+
isTeamSelected ? React.createElement(CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null))));
|
|
278
|
+
})
|
|
279
|
+
: null,
|
|
280
|
+
accountTeams.length > 0
|
|
281
|
+
? sortedAccountTeamsWithNamesToDisplay.map((team) => {
|
|
297
282
|
const isSubmenuOpen = team.id === openAccountSubmenuId;
|
|
298
|
-
const
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
selectedProjectTeamIndex = projectTeams.findIndex((team) => team.id === selectedTeam?.id);
|
|
303
|
-
}
|
|
304
|
-
const isProjectTeamSelected = selectedProjectTeamIndex >= 0;
|
|
283
|
+
const isProjectTeamSelected = team.projectTeams &&
|
|
284
|
+
team.projectTeams.length > 0 &&
|
|
285
|
+
team.projectTeams.some((team) => team.id === selectedTeam?.id);
|
|
286
|
+
const isTeamSelected = team.id === selectedTeam?.id;
|
|
305
287
|
const isMenuSelected = isTeamSelected || isProjectTeamSelected;
|
|
306
|
-
if (existProjectTeams && isProjectTeamSelected) {
|
|
307
|
-
const [removedTeam] = projectTeams.splice(selectedProjectTeamIndex, 1);
|
|
308
|
-
projectTeams.unshift(removedTeam);
|
|
309
|
-
}
|
|
310
288
|
return (React.createElement("div", { key: team.id, id: `${team.id}-account-menu` },
|
|
311
289
|
React.createElement(HeaderMenuItem, { "aria-expanded": isSubmenuOpen, "aria-selected": isMenuSelected, className: headerDropdownMenuItemAccountContainerClassname, onClick: (e) => handleOpenAccountSubmenu({ e, id: team.id }),
|
|
312
290
|
// eslint-disable-next-line no-script-url
|
|
@@ -314,7 +292,7 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
314
292
|
React.createElement("div", { className: headerDropdownMenuItemAccountClassname },
|
|
315
293
|
React.createElement("div", { className: headerDropdownMenuItemTextIconClassname },
|
|
316
294
|
React.createElement("span", { title: team.nameToDisplay, className: headerDropdownMenuItemTextClassname }, team.nameToDisplay),
|
|
317
|
-
isMenuSelected ? React.createElement(CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null),
|
|
295
|
+
isMenuSelected ? (React.createElement(CheckmarkFilled, { className: headerDropdownMenuItemIconClassname })) : null),
|
|
318
296
|
React.createElement("div", { className: headerDropdownMenuItemAccountIconsClassname },
|
|
319
297
|
React.createElement(GroupAccount, { className: headerDropdownMenuItemAccountGroupIconClassname }),
|
|
320
298
|
React.createElement(ChevronDown, { className: headerDropdownMenuItemAccountChevronIconClassname })))),
|
|
@@ -326,9 +304,9 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
326
304
|
href: "javascript:void(0)" },
|
|
327
305
|
React.createElement("div", { className: headerDropdownMenuItemClassname, style: { paddingLeft: "1rem" } },
|
|
328
306
|
React.createElement("span", { title: team.nameToDisplay, className: headerDropdownMenuItemTextClassname }, "Account Page"),
|
|
329
|
-
isTeamSelected ? React.createElement(CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null)),
|
|
330
|
-
projectTeams && projectTeams.length > 0
|
|
331
|
-
? projectTeams.map((team) => {
|
|
307
|
+
isTeamSelected ? (React.createElement(CheckmarkFilled, { className: headerDropdownMenuItemIconClassname })) : null)),
|
|
308
|
+
team.projectTeams && team.projectTeams.length > 0
|
|
309
|
+
? team.projectTeams.map((team) => {
|
|
332
310
|
const isTeamSelected = team.id === selectedTeam?.id;
|
|
333
311
|
return (React.createElement("div", { key: team.id, id: `${team.id}-project-menu-item` },
|
|
334
312
|
React.createElement(HeaderMenuItem, { "aria-selected": isTeamSelected, className: headerDropdownMenuItemContainerClassname, onClick: () => {
|
|
@@ -341,19 +319,22 @@ function HeaderTeamSwitcher({ analyticsHelpers, baseServicesUrl, createJoinTeamT
|
|
|
341
319
|
isTeamSelected ? (React.createElement(CheckmarkFilled, { className: headerDropdownMenuItemIconClassname })) : null))));
|
|
342
320
|
})
|
|
343
321
|
: null)));
|
|
344
|
-
}
|
|
345
|
-
|
|
346
|
-
|
|
322
|
+
})
|
|
323
|
+
: null,
|
|
324
|
+
standardTeams.length > 0
|
|
325
|
+
? sortedStandardTeamsWithNamesToDisplay.map((team) => {
|
|
326
|
+
const isTeamSelected = team.id === selectedTeam?.id;
|
|
327
|
+
return (React.createElement("div", { key: team.id, id: `${team.id}-standard-menu-item` },
|
|
347
328
|
React.createElement(HeaderMenuItem, { "aria-selected": isTeamSelected, className: headerDropdownMenuItemContainerClassname, onClick: () => {
|
|
348
|
-
handleTeamClick({ team, type:
|
|
329
|
+
handleTeamClick({ team, type: "standard" });
|
|
349
330
|
}, "data-testid": "header-team-switcher-menu-item",
|
|
350
331
|
// eslint-disable-next-line no-script-url
|
|
351
332
|
href: "javascript:void(0)" },
|
|
352
333
|
React.createElement("div", { className: headerDropdownMenuItemClassname },
|
|
353
334
|
React.createElement("span", { title: team.nameToDisplay, className: headerDropdownMenuItemTextClassname }, team.nameToDisplay),
|
|
354
335
|
isTeamSelected ? React.createElement(CheckmarkFilled, { className: headerDropdownMenuItemIconClassname }) : null))));
|
|
355
|
-
}
|
|
356
|
-
|
|
336
|
+
})
|
|
337
|
+
: null))));
|
|
357
338
|
}
|
|
358
339
|
return null;
|
|
359
340
|
}
|
|
@@ -113,9 +113,9 @@ function ProfileSettings({ baseServicesUrl, refetchUser, refetchUserTeams, refet
|
|
|
113
113
|
return (React.createElement(ComposedModal, { "aria-label": "Profile Settings", className: `${prefix}--bmrg-profile-settings-container ${prefix}--bmrg-header-modal`, open: isOpen, onClose: handleClose, preventCloseOnClickOutside: true },
|
|
114
114
|
React.createElement(ModalHeader, { closeModal: handleClose, title: `User profile - ${userName}` }),
|
|
115
115
|
React.createElement(ModalBody, { style: { maxHeight: "31.5rem" } },
|
|
116
|
-
React.createElement("p", { className: `${prefix}--bmrg-profile-settings__title` }, "More user profile settings will be here eventually, but for now you can choose which Teams are shown in your
|
|
117
|
-
React.createElement("h2", { className: `${prefix}--bmrg-profile-settings__subtitle` }, "Teams visible in Launchpad
|
|
118
|
-
React.createElement("p", { className: `${prefix}--bmrg-profile-settings__description` }, "Choose Teams to show or hide in your Launchpad
|
|
116
|
+
React.createElement("p", { className: `${prefix}--bmrg-profile-settings__title` }, "More user profile settings will be here eventually, but for now you can choose which Teams are shown in your sidebar in Launchpad."),
|
|
117
|
+
React.createElement("h2", { className: `${prefix}--bmrg-profile-settings__subtitle` }, "Teams visible in Launchpad sidebar"),
|
|
118
|
+
React.createElement("p", { className: `${prefix}--bmrg-profile-settings__description` }, "Choose Teams to show or hide in your Launchpad sidebar and Catalog (useful for sensitive demos). You will not be able to access or view unchecked Teams from the sidebar, and cannot add items to them from Catalog."),
|
|
119
119
|
userIsLoading ? (React.createElement(StructuredListSkeleton, null)) : userError ? (React.createElement(Error, { style: { color: "#F2F4F8", padding: "1rem" } })) : teams?.length > 0 ? (React.createElement(StructuredListWrapper, { className: `${prefix}--bmrg-profile-settings-list` },
|
|
120
120
|
React.createElement(StructuredListHead, null,
|
|
121
121
|
React.createElement(StructuredListRow, { head: true },
|
|
@@ -18,11 +18,11 @@ IBM Confidential
|
|
|
18
18
|
694970X, 69497O0
|
|
19
19
|
© Copyright IBM Corp. 2022, 2024
|
|
20
20
|
*/
|
|
21
|
-
function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme = "g10", config, createJoinTeamTrigger,
|
|
21
|
+
function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme = "g10", config, createJoinTeamTrigger, history, isLaunchpad = false, isLoadingTeamSwitcher, isSuccessTeamSwitcher, setIsSuccessTeamSwitcher, leftPanel, platformName, productName, profileMenuItems = [], supportMenuItems = [], renderPrivacyRedirect = true, renderPrivacyStatement = true, rightPanel, handleShowTutorial, refetchUser, refetchUserTeams, refetchNavigation, skipToContentProps, templateMeteringEvent, trackEvent, triggerEvent, tutorialScreenToShow, user, userTeams, userTeamsAssets, enableIcaMacs, }) {
|
|
22
22
|
// Support base header .e.g for an error state
|
|
23
23
|
if (!config) {
|
|
24
24
|
return (React.createElement(QueryClientProvider, { client: queryClient },
|
|
25
|
-
React.createElement(Header, { baseEnvUrl: baseEnvUrl ?? "", baseServicesUrl: "", carbonTheme: carbonTheme, enableAppSwitcher: false, enableNotifications: false, enableNotificationsCount: false,
|
|
25
|
+
React.createElement(Header, { baseEnvUrl: baseEnvUrl ?? "", baseServicesUrl: "", carbonTheme: carbonTheme, enableAppSwitcher: false, enableNotifications: false, enableNotificationsCount: false, productName: productName || platformName || "", user: user })));
|
|
26
26
|
}
|
|
27
27
|
const { features, navigation, platform, platformMessage } = config;
|
|
28
28
|
const names = getProductAndPlatformNames({ productName, platformName, platform });
|
|
@@ -63,7 +63,7 @@ function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme = "g10", config, cr
|
|
|
63
63
|
*/
|
|
64
64
|
const isPrivacyStatementDisabled = renderPrivacyStatement === false || features?.["consent.enabled"] === false;
|
|
65
65
|
return (React.createElement(QueryClientProvider, { client: queryClient },
|
|
66
|
-
React.createElement(Header, { analyticsHelpers: analyticsHelpers, baseEnvUrl: platform.baseEnvUrl, baseServicesUrl: platform.baseServicesUrl, carbonTheme: carbonTheme, createJoinTeamTrigger: createJoinTeamTrigger, enableAppSwitcher: isAppSwitcherEnabled, instanceSwitcherEnabled: instanceSwitcherEnabled, enableNotifications: isNotificationsEnabled, enableNotificationsCount: isNotificationsCountEnabled,
|
|
66
|
+
React.createElement(Header, { analyticsHelpers: analyticsHelpers, baseEnvUrl: platform.baseEnvUrl, baseServicesUrl: platform.baseServicesUrl, carbonTheme: carbonTheme, createJoinTeamTrigger: createJoinTeamTrigger, enableAppSwitcher: isAppSwitcherEnabled, instanceSwitcherEnabled: instanceSwitcherEnabled, enableNotifications: isNotificationsEnabled, enableNotificationsCount: isNotificationsCountEnabled, leftPanel: leftPanel, navLinks: navigation, platform: platform, platformMessage: platformMessage, prefixName: names.platformName, productName: names.productName, rightPanel: rightPanel, requestSummary: user?.requestSummary, skipToContentProps: skipToContentProps, templateMeteringEvent: templateMeteringEvent, triggerEvent: triggerEvent, profileMenuItems: [
|
|
67
67
|
isUserEnabled && (React.createElement(ProfileSettingsMenuItem, { key: "profile-settings", baseServicesUrl: platform.baseServicesUrl, src: `${platform.baseServicesUrl}/users/image/${user?.email}`, userName: user?.displayName ?? user?.name, refetchUser: refetchUser, refetchUserTeams: refetchUserTeams, refetchNavigation: refetchNavigation })),
|
|
68
68
|
isSendMailEnabled && (React.createElement(HeaderMenuItem, { key: "email-preferences", href: `${platform.baseEnvUrl}/launchpad/email-preferences`, icon: React.createElement(Email, null), kind: "internal", text: "Email Preferences", type: "link" })),
|
|
69
69
|
!isPrivacyStatementDisabled && (React.createElement(PrivacyStatementMenuItem, { key: "privacy-statement", baseServicesUrl: platform.baseServicesUrl, platformEmail: platform?.platformEmail })),
|
package/dist/types/index.d.ts
CHANGED
|
@@ -367,7 +367,6 @@ type Props$G = {
|
|
|
367
367
|
className?: string;
|
|
368
368
|
createJoinTeamTrigger?: Function;
|
|
369
369
|
enableAppSwitcher?: boolean;
|
|
370
|
-
enableTeamSwitcher?: boolean;
|
|
371
370
|
instanceSwitcherEnabled?: boolean;
|
|
372
371
|
enableNotifications?: boolean;
|
|
373
372
|
enableNotificationsCount?: boolean;
|
|
@@ -1438,7 +1437,6 @@ type Props = {
|
|
|
1438
1437
|
};
|
|
1439
1438
|
platformMessage?: any;
|
|
1440
1439
|
};
|
|
1441
|
-
enableTeamSwitcher?: boolean;
|
|
1442
1440
|
history?: any;
|
|
1443
1441
|
isLaunchpad?: boolean;
|
|
1444
1442
|
isLoadingTeamSwitcher?: boolean;
|
|
@@ -1485,6 +1483,6 @@ type Props = {
|
|
|
1485
1483
|
handleShowTutorial?: Function;
|
|
1486
1484
|
tutorialScreenToShow?: string;
|
|
1487
1485
|
};
|
|
1488
|
-
declare function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme, config, createJoinTeamTrigger,
|
|
1486
|
+
declare function UIShell({ analyticsHelpers, baseEnvUrl, carbonTheme, config, createJoinTeamTrigger, history, isLaunchpad, isLoadingTeamSwitcher, isSuccessTeamSwitcher, setIsSuccessTeamSwitcher, leftPanel, platformName, productName, profileMenuItems, supportMenuItems, renderPrivacyRedirect, renderPrivacyStatement, rightPanel, handleShowTutorial, refetchUser, refetchUserTeams, refetchNavigation, skipToContentProps, templateMeteringEvent, trackEvent, triggerEvent, tutorialScreenToShow, user, userTeams, userTeamsAssets, enableIcaMacs, }: Props): React.JSX.Element;
|
|
1489
1487
|
|
|
1490
1488
|
export { AdvantageSideNav, AutoSuggestBmrg as AutoSuggest, Avatar, CheckboxListComponent as CheckboxList, ComboBoxComponent as ComboBox, ComboBoxMultiSelect, ComposedModal, ConfirmModal, CreatableComponent as Creatable, DataDrivenInput, DateInputComponent as DateInput, DecisionButtons, DelayedRender, DynamicFormik, DynamicInput, Error, Error403, Error404, ErrorBoundary, ErrorDragon, ErrorFullPage, Error as ErrorMessage, ErrorPage, ErrorPageCore, FeatureHeader, FeatureHeaderSubtitle, FeatureHeaderTitle, FeatureNavTab, FeatureNavTabs, FeatureSideNav, FeatureSideNavFooter, FeatureSideNavHeader, FeatureSideNavLink, FeatureSideNavLinks, FlowModalContainer as FlowModal, FlowModalForm, FormInput, Header, _default as HeaderMenuItem, ImageModal, InputGovernor, Loading, MemberBar, Modal, ModalConfirmEdit, FlowModalContainer as ModalFlow, FlowModalForm as ModalFlowForm, ModalForm, ModalFunctionChildrenProps, ModalTrigger, NotificationsContainer, PlatformBanner, PlatformNotificationsContainer, Portal, PrivacyStatement, ProtectedRoute, RadioGroupComponent as RadioGroup, RichTextAreaComponent as RichTextArea, SimpleTeamService, Team, TextAreaComponent as TextArea, TextInputComponent as TextInput, ToastNotification, ToggleComponent as Toggle, TooltipHover, UIShell, User, UserTeams, notify };
|
package/package.json
CHANGED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
/*
|
|
4
|
-
IBM Confidential
|
|
5
|
-
694970X, 69497O0
|
|
6
|
-
© Copyright IBM Corp. 2022, 2024
|
|
7
|
-
*/
|
|
8
|
-
const TEAM_TYPES = {
|
|
9
|
-
ACCOUNT: "account",
|
|
10
|
-
PERSONAL: "personal",
|
|
11
|
-
PROJECT: "project",
|
|
12
|
-
STANDARD: "standard",
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
exports.TEAM_TYPES = TEAM_TYPES;
|