@boomerang-io/carbon-addons-boomerang-react 4.6.11-beta.42 → 4.6.11-beta.43

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.
@@ -64,19 +64,12 @@ const instanceCheckMarkContainerClass = "instance-checkmark-style-container";
64
64
  function Header(props) {
65
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
- const hasUserTeamsAssets = Boolean(userTeamsAssets);
68
67
  const userTeamsUrl = servicesConfig.serviceUrl.getUserTeamsServices({ baseServicesUrl });
69
- const userTeamsAssetsUrl = servicesConfig.serviceUrl.getUserTeamsServicesAssets({ baseServicesUrl });
70
68
  const teamsQuery = reactQuery.useQuery({
71
69
  queryKey: userTeamsUrl,
72
70
  queryFn: servicesConfig.resolver.query(userTeamsUrl, null),
73
71
  enabled: !hasUserTeams && Boolean(baseServicesUrl),
74
72
  });
75
- const teamsAssetsQuery = reactQuery.useQuery({
76
- queryKey: userTeamsAssetsUrl,
77
- queryFn: servicesConfig.resolver.query(userTeamsAssetsUrl, null),
78
- enabled: !hasUserTeamsAssets && Boolean(baseServicesUrl),
79
- });
80
73
  return (React__default.default.createElement(React__default.default.Fragment, null,
81
74
  React__default.default.createElement(react.Theme, { theme: carbonTheme },
82
75
  React__default.default.createElement(react.Header, { "aria-label": "App navigation header", className: className },
@@ -93,7 +86,7 @@ function Header(props) {
93
86
  React__default.default.createElement(NotificationsMenu, { baseEnvUrl: baseEnvUrl, baseServicesUrl: baseServicesUrl, enabled: Boolean(props.enableNotifications), countEnabled: Boolean(props.enableNotificationsCount) }),
94
87
  React__default.default.createElement(SupportMenu, { enabled: Array.isArray(props.supportMenuItems) && props.supportMenuItems.length > 0, menuItems: props.supportMenuItems }),
95
88
  React__default.default.createElement(ProfileMenu, { enabled: Array.isArray(props.profileMenuItems) && props.profileMenuItems.length > 0, menuItems: props.profileMenuItems }),
96
- React__default.default.createElement(AppSwitcherMenu, { baseEnvUrl: baseEnvUrl, baseServicesUrl: baseServicesUrl, enabled: props.enableAppSwitcher, teamsQuery: teamsAssetsQuery, templateMeteringEvent: templateMeteringEvent, triggerEvent: triggerEvent, userTeams: userTeamsAssets }),
89
+ React__default.default.createElement(AppSwitcherMenu, { baseEnvUrl: baseEnvUrl, baseServicesUrl: baseServicesUrl, enabled: props.enableAppSwitcher, templateMeteringEvent: templateMeteringEvent, triggerEvent: triggerEvent, userTeams: userTeamsAssets }),
97
90
  React__default.default.createElement(RightPanelMenu, { enabled: Boolean(rightPanel && Object.keys(rightPanel).length), ...rightPanel })))),
98
91
  React__default.default.createElement(NotificationsContainer.default, { enableMultiContainer: true, containerId: `${settings.prefix}--bmrg-header-notifications` })));
99
92
  }
@@ -169,12 +162,20 @@ function ProfileMenu(props) {
169
162
  }
170
163
  function AppSwitcherMenu(props) {
171
164
  const { isOpen, toggleActive, ref } = useHeaderMenu.default(MenuButtonId.Switcher);
165
+ const hasUserTeamsAssets = Boolean(props.userTeams);
166
+ const userTeamsAssetsUrl = servicesConfig.serviceUrl.getUserTeamsServicesAssets({ baseServicesUrl: props.baseServicesUrl });
167
+ const queryEnabled = isOpen && props.enabled && !hasUserTeamsAssets && Boolean(props.baseServicesUrl);
168
+ const teamsAssetsQuery = reactQuery.useQuery({
169
+ queryKey: userTeamsAssetsUrl,
170
+ queryFn: servicesConfig.resolver.query(userTeamsAssetsUrl, null),
171
+ enabled: queryEnabled,
172
+ });
172
173
  if (!props.enabled || !props.baseServicesUrl) {
173
174
  return null;
174
175
  }
175
176
  return (React__default.default.createElement("div", { ref: ref },
176
177
  React__default.default.createElement("button", { "aria-controls": MenuListId.Switcher, "aria-expanded": isOpen, "aria-haspopup": "menu", "aria-label": MenuAriaLabelRecord.Switcher, className: headerButtonClassNames, "data-testid": "header-appswitcher-link", id: MenuButtonId.Switcher, onClick: toggleActive }, isOpen ? React__default.default.createElement(icons.Close, { size: 20 }) : React__default.default.createElement(icons.Switcher, { size: 20 })),
177
- React__default.default.createElement(HeaderAppSwitcher.default, { baseEnvUrl: props.baseEnvUrl, baseServicesUrl: props.baseServicesUrl, id: MenuListId.Switcher, isOpen: isOpen, teamsQuery: props.teamsQuery, templateMeteringEvent: props.templateMeteringEvent, triggerEvent: props.triggerEvent, userTeams: props.userTeams })));
178
+ React__default.default.createElement(HeaderAppSwitcher.default, { baseEnvUrl: props.baseEnvUrl, baseServicesUrl: props.baseServicesUrl, id: MenuListId.Switcher, isOpen: isOpen, teamsQuery: teamsAssetsQuery, templateMeteringEvent: props.templateMeteringEvent, triggerEvent: props.triggerEvent, userTeams: props.userTeams })));
178
179
  }
179
180
  function RightPanelMenu(props) {
180
181
  const { isOpen, toggleActive, ref } = useHeaderMenu.default(MenuButtonId.RightPanel);
@@ -56,19 +56,12 @@ const instanceCheckMarkContainerClass = "instance-checkmark-style-container";
56
56
  function Header(props) {
57
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
- const hasUserTeamsAssets = Boolean(userTeamsAssets);
60
59
  const userTeamsUrl = serviceUrl.getUserTeamsServices({ baseServicesUrl });
61
- const userTeamsAssetsUrl = serviceUrl.getUserTeamsServicesAssets({ baseServicesUrl });
62
60
  const teamsQuery = useQuery({
63
61
  queryKey: userTeamsUrl,
64
62
  queryFn: resolver.query(userTeamsUrl, null),
65
63
  enabled: !hasUserTeams && Boolean(baseServicesUrl),
66
64
  });
67
- const teamsAssetsQuery = useQuery({
68
- queryKey: userTeamsAssetsUrl,
69
- queryFn: resolver.query(userTeamsAssetsUrl, null),
70
- enabled: !hasUserTeamsAssets && Boolean(baseServicesUrl),
71
- });
72
65
  return (React.createElement(React.Fragment, null,
73
66
  React.createElement(Theme, { theme: carbonTheme },
74
67
  React.createElement(Header$1, { "aria-label": "App navigation header", className: className },
@@ -85,7 +78,7 @@ function Header(props) {
85
78
  React.createElement(NotificationsMenu, { baseEnvUrl: baseEnvUrl, baseServicesUrl: baseServicesUrl, enabled: Boolean(props.enableNotifications), countEnabled: Boolean(props.enableNotificationsCount) }),
86
79
  React.createElement(SupportMenu, { enabled: Array.isArray(props.supportMenuItems) && props.supportMenuItems.length > 0, menuItems: props.supportMenuItems }),
87
80
  React.createElement(ProfileMenu, { enabled: Array.isArray(props.profileMenuItems) && props.profileMenuItems.length > 0, menuItems: props.profileMenuItems }),
88
- React.createElement(AppSwitcherMenu, { baseEnvUrl: baseEnvUrl, baseServicesUrl: baseServicesUrl, enabled: props.enableAppSwitcher, teamsQuery: teamsAssetsQuery, templateMeteringEvent: templateMeteringEvent, triggerEvent: triggerEvent, userTeams: userTeamsAssets }),
81
+ React.createElement(AppSwitcherMenu, { baseEnvUrl: baseEnvUrl, baseServicesUrl: baseServicesUrl, enabled: props.enableAppSwitcher, templateMeteringEvent: templateMeteringEvent, triggerEvent: triggerEvent, userTeams: userTeamsAssets }),
89
82
  React.createElement(RightPanelMenu, { enabled: Boolean(rightPanel && Object.keys(rightPanel).length), ...rightPanel })))),
90
83
  React.createElement(NotificationsContainer, { enableMultiContainer: true, containerId: `${prefix}--bmrg-header-notifications` })));
91
84
  }
@@ -161,12 +154,20 @@ function ProfileMenu(props) {
161
154
  }
162
155
  function AppSwitcherMenu(props) {
163
156
  const { isOpen, toggleActive, ref } = useHeaderMenu(MenuButtonId.Switcher);
157
+ const hasUserTeamsAssets = Boolean(props.userTeams);
158
+ const userTeamsAssetsUrl = serviceUrl.getUserTeamsServicesAssets({ baseServicesUrl: props.baseServicesUrl });
159
+ const queryEnabled = isOpen && props.enabled && !hasUserTeamsAssets && Boolean(props.baseServicesUrl);
160
+ const teamsAssetsQuery = useQuery({
161
+ queryKey: userTeamsAssetsUrl,
162
+ queryFn: resolver.query(userTeamsAssetsUrl, null),
163
+ enabled: queryEnabled,
164
+ });
164
165
  if (!props.enabled || !props.baseServicesUrl) {
165
166
  return null;
166
167
  }
167
168
  return (React.createElement("div", { ref: ref },
168
169
  React.createElement("button", { "aria-controls": MenuListId.Switcher, "aria-expanded": isOpen, "aria-haspopup": "menu", "aria-label": MenuAriaLabelRecord.Switcher, className: headerButtonClassNames, "data-testid": "header-appswitcher-link", id: MenuButtonId.Switcher, onClick: toggleActive }, isOpen ? React.createElement(Close, { size: 20 }) : React.createElement(Switcher, { size: 20 })),
169
- React.createElement(HeaderAppSwitcher, { baseEnvUrl: props.baseEnvUrl, baseServicesUrl: props.baseServicesUrl, id: MenuListId.Switcher, isOpen: isOpen, teamsQuery: props.teamsQuery, templateMeteringEvent: props.templateMeteringEvent, triggerEvent: props.triggerEvent, userTeams: props.userTeams })));
170
+ React.createElement(HeaderAppSwitcher, { baseEnvUrl: props.baseEnvUrl, baseServicesUrl: props.baseServicesUrl, id: MenuListId.Switcher, isOpen: isOpen, teamsQuery: teamsAssetsQuery, templateMeteringEvent: props.templateMeteringEvent, triggerEvent: props.triggerEvent, userTeams: props.userTeams })));
170
171
  }
171
172
  function RightPanelMenu(props) {
172
173
  const { isOpen, toggleActive, ref } = useHeaderMenu(MenuButtonId.RightPanel);
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.42",
4
+ "version": "4.6.11-beta.43",
5
5
  "author": {
6
6
  "name": "Tim Bula",
7
7
  "email": "timrbula@gmail.com"