'use strict'; import React from 'react'; import CampaignsList from '../campaigns/List'; import CampaignsCUD from '../campaigns/CUD'; import ChannelsList from './List'; import ChannelsCUD from './CUD'; import Share from '../shares/Share'; import {ellipsizeBreadcrumbLabel} from "../lib/helpers" import {namespaceCheckPermissions} from "../lib/namespace"; function getMenus(t) { return { 'channels': { title: t('channels'), link: '/channels', checkPermissions: { createChannel: { entityTypeId: 'namespace', requiredOperations: ['createChannel'] }, createCampaign: { entityTypeId: 'namespace', requiredOperations: ['createCampaign'] }, ...namespaceCheckPermissions('createChannel'), }, panelRender: props => , children: { ':channelId([0-9]+)': { title: resolved => t('channelName', {name: ellipsizeBreadcrumbLabel(resolved.channel.name)}), resolve: { channel: params => `rest/channels/${params.channelId}` }, link: params => `/channels/${params.channelId}/campaigns`, navs: { campaigns: { title: t('campaigns'), link: params => `/channels/${params.channelId}/campaigns`, visible: resolved => resolved.channel.permissions.includes('view'), panelRender: props => }, ':action(edit|delete)': { title: t('edit'), link: params => `/channels/${params.channelId}/edit`, visible: resolved => resolved.channel.permissions.includes('view') || resolved.channel.permissions.includes('edit'), panelRender: props => }, share: { title: t('share'), link: params => `/channels/${params.channelId}/share`, visible: resolved => resolved.channel.permissions.includes('share'), panelRender: props => } }, children: { create: { title: t('createCampaign'), link: params => `/channels/${params.channelId}/create`, visible: resolved => resolved.channel.permissions.includes('createCampaign'), panelRender: props => , } } }, 'create': { title: t('createChannel'), panelRender: props => } } } }; } export default { getMenus }