Fix sorting to only enable backend-supported fields

This commit is contained in:
Mondo Diaz
2026-01-15 18:33:10 +00:00
parent 193e02baad
commit 8549956a5e
4 changed files with 1 additions and 10 deletions

View File

@@ -20,7 +20,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Replaced project card grid with sortable data table on Home page for better handling of large project lists - Replaced project card grid with sortable data table on Home page for better handling of large project lists
- Replaced package card grid with sortable data table on Project page for consistency - Replaced package card grid with sortable data table on Project page for consistency
- Replaced SortDropdown with table header sorting on Package page for consistency - Replaced SortDropdown with table header sorting on Package page for consistency
- Enabled sorting on all table columns (except description) across Home, Project, and Package pages - Enabled sorting on supported table columns (name, created, updated) via clickable headers
- Updated browser tab title to "Orchard" with custom favicon - Updated browser tab title to "Orchard" with custom favicon
- Improved pod naming: Orchard pods now named `orchard-{env}-server-*` for clarity (#51) - Improved pod naming: Orchard pods now named `orchard-{env}-server-*` for clarity (#51)

View File

@@ -234,7 +234,6 @@ function Home() {
{ {
key: 'visibility', key: 'visibility',
header: 'Visibility', header: 'Visibility',
sortable: true,
render: (project) => ( render: (project) => (
<Badge variant={project.is_public ? 'public' : 'private'}> <Badge variant={project.is_public ? 'public' : 'private'}>
{project.is_public ? 'Public' : 'Private'} {project.is_public ? 'Public' : 'Private'}
@@ -244,7 +243,6 @@ function Home() {
{ {
key: 'created_by', key: 'created_by',
header: 'Owner', header: 'Owner',
sortable: true,
className: 'cell-owner', className: 'cell-owner',
render: (project) => project.created_by, render: (project) => project.created_by,
}, },

View File

@@ -195,13 +195,11 @@ function PackagePage() {
{ {
key: 'artifact_size', key: 'artifact_size',
header: 'Size', header: 'Size',
sortable: true,
render: (t: TagDetail) => <span>{formatBytes(t.artifact_size)}</span>, render: (t: TagDetail) => <span>{formatBytes(t.artifact_size)}</span>,
}, },
{ {
key: 'artifact_content_type', key: 'artifact_content_type',
header: 'Type', header: 'Type',
sortable: true,
render: (t: TagDetail) => ( render: (t: TagDetail) => (
<span className="content-type">{t.artifact_content_type || '-'}</span> <span className="content-type">{t.artifact_content_type || '-'}</span>
), ),
@@ -209,7 +207,6 @@ function PackagePage() {
{ {
key: 'artifact_original_name', key: 'artifact_original_name',
header: 'Filename', header: 'Filename',
sortable: true,
className: 'cell-truncate', className: 'cell-truncate',
render: (t: TagDetail) => ( render: (t: TagDetail) => (
<span title={t.artifact_original_name || undefined}>{t.artifact_original_name || '-'}</span> <span title={t.artifact_original_name || undefined}>{t.artifact_original_name || '-'}</span>

View File

@@ -327,25 +327,21 @@ function ProjectPage() {
{ {
key: 'format', key: 'format',
header: 'Format', header: 'Format',
sortable: true,
render: (pkg) => <Badge variant="default">{pkg.format}</Badge>, render: (pkg) => <Badge variant="default">{pkg.format}</Badge>,
}, },
{ {
key: 'tag_count', key: 'tag_count',
header: 'Tags', header: 'Tags',
sortable: true,
render: (pkg) => pkg.tag_count ?? '—', render: (pkg) => pkg.tag_count ?? '—',
}, },
{ {
key: 'artifact_count', key: 'artifact_count',
header: 'Artifacts', header: 'Artifacts',
sortable: true,
render: (pkg) => pkg.artifact_count ?? '—', render: (pkg) => pkg.artifact_count ?? '—',
}, },
{ {
key: 'total_size', key: 'total_size',
header: 'Size', header: 'Size',
sortable: true,
render: (pkg) => render: (pkg) =>
pkg.total_size !== undefined && pkg.total_size > 0 ? formatBytes(pkg.total_size) : '—', pkg.total_size !== undefined && pkg.total_size > 0 ? formatBytes(pkg.total_size) : '—',
}, },