import MarketplaceRequestBadge from './components/MarketplaceRequestBadge'; import { hasAtLeastOnePermission, hasPermission } from '../../lib/authorization'; import { createSidebarItems } from '../../lib/createSidebarItems'; import { links } from '../../lib/links'; export const { registerSidebarItem: registerMarketplaceSidebarItem, unregisterSidebarItem: unregisterMarketplaceSidebarItem, getSidebarItems: getMarketplaceSidebarItems, subscribeToSidebarItems: subscribeToMarketplaceSidebarItems, } = createSidebarItems([ { href: '/marketplace/explore', icon: 'compass', i18nLabel: 'Explore', permissionGranted: (): boolean => hasAtLeastOnePermission(['access-marketplace', 'manage-apps']), }, { href: '/marketplace/premium', icon: 'lightning', i18nLabel: 'Premium', permissionGranted: (): boolean => hasAtLeastOnePermission(['access-marketplace', 'manage-apps']), }, { href: '/marketplace/installed', icon: 'circle-arrow-down', i18nLabel: 'Installed', permissionGranted: (): boolean => hasAtLeastOnePermission(['access-marketplace', 'manage-apps']), }, { href: '/marketplace/requested', icon: 'cube', i18nLabel: 'Requested', badge: () => , permissionGranted: (): boolean => hasPermission('manage-apps'), }, { href: '/marketplace/private', icon: 'lock', i18nLabel: 'Private_Apps', permissionGranted: (): boolean => hasAtLeastOnePermission(['access-marketplace', 'manage-apps']), }, { divider: true, i18nLabel: 'marketplace/private', permissionGranted: (): boolean => hasPermission('access-marketplace') }, { href: links.go.appsDocumentation, icon: 'new-window', i18nLabel: 'Documentation', externalUrl: true, permissionGranted: (): boolean => hasAtLeastOnePermission(['access-marketplace', 'manage-apps']), }, { divider: true, i18nLabel: 'marketplace/Documentation', permissionGranted: (): boolean => hasPermission('access-marketplace') }, ]);