Skip to content

Commit

Permalink
update access breadcrumbs
Browse files Browse the repository at this point in the history
  • Loading branch information
maciaszczykm committed Mar 27, 2024
1 parent 401f2d1 commit 85e6126
Show file tree
Hide file tree
Showing 5 changed files with 133 additions and 26 deletions.
27 changes: 1 addition & 26 deletions assets/src/components/kubernetes/access/Access.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,5 @@
import { Outlet, useMatch } from 'react-router-dom'
import {
SubTab,
TabList,
TabPanel,
useSetBreadcrumbs,
} from '@pluralsh/design-system'
import { SubTab, TabList, TabPanel } from '@pluralsh/design-system'
import { Suspense, useMemo, useRef, useState } from 'react'

import {
Expand Down Expand Up @@ -50,26 +45,6 @@ export default function Access() {
const tab = pathMatch?.params?.tab || ''
const currentTab = directory.find(({ path }) => path === tab)

useSetBreadcrumbs(
useMemo(
() => [
{
label: 'kubernetes',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: cluster?.name ?? '',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: 'access',
url: getAccessAbsPath(cluster?.id),
},
],
[cluster]
)
)

const headerContent = useMemo(
() => (
<TabList
Expand Down
33 changes: 33 additions & 0 deletions assets/src/components/kubernetes/access/ClusterRoleBindings.tsx
Original file line number Diff line number Diff line change
@@ -1,19 +1,52 @@
import { createColumnHelper } from '@tanstack/react-table'
import { useMemo } from 'react'

import { useSetBreadcrumbs } from '@pluralsh/design-system'

import {
Clusterrolebinding_ClusterRoleBindingList as ClusterRoleBindingListT,
Clusterrolebinding_ClusterRoleBinding as ClusterRoleBindingT,
ClusterRoleBindingsQuery,
ClusterRoleBindingsQueryVariables,
Maybe,
useClusterRoleBindingsQuery,
} from '../../../generated/graphql-kubernetes'
import { useDefaultColumns } from '../utils'
import { ResourceList } from '../ResourceList'
import { ClusterTinyFragment } from '../../../generated/graphql'
import {
CLUSTER_ROLE_BINDINGS_REL_PATH,
getAccessAbsPath,
getKubernetesAbsPath,
} from '../../../routes/kubernetesRoutesConsts'
import { useKubernetesContext } from '../Kubernetes'

export const getBreadcrumbs = (cluster?: Maybe<ClusterTinyFragment>) => [
{
label: 'kubernetes',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: cluster?.name ?? '',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: 'access',
url: getAccessAbsPath(cluster?.id),
},
{
label: 'cluster role bindings',
url: `${getAccessAbsPath(cluster?.id)}/${CLUSTER_ROLE_BINDINGS_REL_PATH}`,
},
]

const columnHelper = createColumnHelper<ClusterRoleBindingT>()

export default function ClusterRoleBindings() {
const { cluster } = useKubernetesContext()

useSetBreadcrumbs(useMemo(() => getBreadcrumbs(cluster), [cluster]))

const { colName, colLabels, colCreationTimestamp } =
useDefaultColumns(columnHelper)
const columns = useMemo(
Expand Down
33 changes: 33 additions & 0 deletions assets/src/components/kubernetes/access/ClusterRoles.tsx
Original file line number Diff line number Diff line change
@@ -1,19 +1,52 @@
import { createColumnHelper } from '@tanstack/react-table'
import { useMemo } from 'react'

import { useSetBreadcrumbs } from '@pluralsh/design-system'

import {
Clusterrole_ClusterRoleList as ClusterRoleListT,
Clusterrole_ClusterRole as ClusterRoleT,
ClusterRolesQuery,
ClusterRolesQueryVariables,
Maybe,
useClusterRolesQuery,
} from '../../../generated/graphql-kubernetes'
import { useDefaultColumns } from '../utils'
import { ResourceList } from '../ResourceList'
import { ClusterTinyFragment } from '../../../generated/graphql'
import {
CLUSTER_ROLES_REL_PATH,
getAccessAbsPath,
getKubernetesAbsPath,
} from '../../../routes/kubernetesRoutesConsts'
import { useKubernetesContext } from '../Kubernetes'

export const getBreadcrumbs = (cluster?: Maybe<ClusterTinyFragment>) => [
{
label: 'kubernetes',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: cluster?.name ?? '',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: 'access',
url: getAccessAbsPath(cluster?.id),
},
{
label: 'cluster roles',
url: `${getAccessAbsPath(cluster?.id)}/${CLUSTER_ROLES_REL_PATH}`,
},
]

const columnHelper = createColumnHelper<ClusterRoleT>()

export default function ClusterRoles() {
const { cluster } = useKubernetesContext()

useSetBreadcrumbs(useMemo(() => getBreadcrumbs(cluster), [cluster]))

const { colName, colLabels, colCreationTimestamp } =
useDefaultColumns(columnHelper)
const columns = useMemo(
Expand Down
33 changes: 33 additions & 0 deletions assets/src/components/kubernetes/access/RoleBindings.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
import { createColumnHelper } from '@tanstack/react-table'
import { useMemo } from 'react'

import { useSetBreadcrumbs } from '@pluralsh/design-system'

import {
Maybe,
Rolebinding_RoleBindingList as RoleBindingListT,
Rolebinding_RoleBinding as RoleBindingT,
RoleBindingsQuery,
Expand All @@ -10,10 +13,40 @@ import {
} from '../../../generated/graphql-kubernetes'
import { useDefaultColumns } from '../utils'
import { ResourceList } from '../ResourceList'
import { ClusterTinyFragment } from '../../../generated/graphql'
import {
ROLE_BINDINGS_REL_PATH,
getAccessAbsPath,
getKubernetesAbsPath,
} from '../../../routes/kubernetesRoutesConsts'
import { useKubernetesContext } from '../Kubernetes'

export const getBreadcrumbs = (cluster?: Maybe<ClusterTinyFragment>) => [
{
label: 'kubernetes',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: cluster?.name ?? '',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: 'access',
url: getAccessAbsPath(cluster?.id),
},
{
label: 'role bindings',
url: `${getAccessAbsPath(cluster?.id)}/${ROLE_BINDINGS_REL_PATH}`,
},
]

const columnHelper = createColumnHelper<RoleBindingT>()

export default function RoleBindings() {
const { cluster } = useKubernetesContext()

useSetBreadcrumbs(useMemo(() => getBreadcrumbs(cluster), [cluster]))

const { colName, colNamespace, colLabels, colCreationTimestamp } =
useDefaultColumns(columnHelper)
const columns = useMemo(
Expand Down
33 changes: 33 additions & 0 deletions assets/src/components/kubernetes/access/Roles.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
import { createColumnHelper } from '@tanstack/react-table'
import { useMemo } from 'react'

import { useSetBreadcrumbs } from '@pluralsh/design-system'

import {
Maybe,
Role_RoleList as RoleListT,
Role_Role as RoleT,
RolesQuery,
Expand All @@ -10,10 +13,40 @@ import {
} from '../../../generated/graphql-kubernetes'
import { useDefaultColumns } from '../utils'
import { ResourceList } from '../ResourceList'
import { ClusterTinyFragment } from '../../../generated/graphql'
import {
ROLES_REL_PATH,
getAccessAbsPath,
getKubernetesAbsPath,
} from '../../../routes/kubernetesRoutesConsts'
import { useKubernetesContext } from '../Kubernetes'

export const getBreadcrumbs = (cluster?: Maybe<ClusterTinyFragment>) => [
{
label: 'kubernetes',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: cluster?.name ?? '',
url: getKubernetesAbsPath(cluster?.id),
},
{
label: 'access',
url: getAccessAbsPath(cluster?.id),
},
{
label: 'roles',
url: `${getAccessAbsPath(cluster?.id)}/${ROLES_REL_PATH}`,
},
]

const columnHelper = createColumnHelper<RoleT>()

export default function Roles() {
const { cluster } = useKubernetesContext()

useSetBreadcrumbs(useMemo(() => getBreadcrumbs(cluster), [cluster]))

const { colName, colNamespace, colLabels, colCreationTimestamp } =
useDefaultColumns(columnHelper)
const columns = useMemo(
Expand Down

0 comments on commit 85e6126

Please sign in to comment.