refine app management and source repository displays
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
2026-07-09 13:56:23 +09:00
parent cf55aa4912
commit 8af6c60088
4 changed files with 10 additions and 5 deletions
+1 -1
View File
@@ -234,7 +234,7 @@ export function AdminManagementPage() {
const columns = useMemo<Array<DataTableColumn<AdminRow>>>(
() => [
{ key: 'no', header: 'No.', className: 'w-20 px-5 py-3 font-medium', cell: (row) => <span className="font-semibold">{row.no}</span> },
{ key: 'no', header: 'No.', className: 'w-14 px-3 py-3 text-center font-medium', cell: (row) => <span className="block text-center font-semibold">{row.no}</span> },
{
key: 'name',
header: '관리자',
+7 -2
View File
@@ -21,6 +21,7 @@ import {
type LicenseAssignmentRow = {
id: string;
no: number;
userId: string;
user: string;
name: string;
@@ -98,7 +99,10 @@ export function LicensesPage() {
const [userKeyword, setUserKeyword] = useState('');
const loadingVisible = useMinimumLoading(loading);
const rows = useMemo(() => assignmentRows(users), [users]);
const rows = useMemo(() => {
const assignments = assignmentRows(users);
return assignments.map((assignment, index) => ({ ...assignment, no: assignments.length - index }));
}, [users]);
const calculateExpiresAt = (licenseCode: string, startsAt: string) => {
const plan = plans.find((item) => item.code === licenseCode);
return addDays(startsAt, plan?.defaultDurationDays);
@@ -278,6 +282,7 @@ export function LicensesPage() {
const columns = useMemo<Array<DataTableColumn<LicenseAssignmentRow>>>(
() => [
{ key: 'no', header: 'No.', className: 'w-14 px-3 py-3 text-center font-medium', cell: (row) => <span className="block text-center font-semibold">{row.no}</span> },
{
key: 'user',
header: '사용자',
@@ -376,7 +381,7 @@ export function LicensesPage() {
</div>
<div className="mt-4">
<DataTableCard
title="부여 이력"
title="목록"
rows={rows}
columns={columns}
filters={filters}
+1 -1
View File
@@ -232,7 +232,7 @@ export function NoticesPage() {
const columns = useMemo<Array<DataTableColumn<(typeof rows)[number]>>>(
() => [
{ key: 'no', header: 'No.', className: 'w-20 px-5 py-3 font-medium', cell: (row) => <span className="font-semibold">{row.no}</span> },
{ key: 'no', header: 'No.', className: 'w-14 px-3 py-3 text-center font-medium', cell: (row) => <span className="block text-center font-semibold">{row.no}</span> },
{
key: 'title',
header: '공지',
+1 -1
View File
@@ -88,7 +88,7 @@ export function OrganizationsPage() {
const columns = useMemo<Array<DataTableColumn<Organization>>>(
() => [
{ key: 'no', header: 'No.', className: 'w-20 px-5 py-3 font-medium', cell: (row) => <span className="font-semibold">{row.no}</span> },
{ key: 'no', header: 'No.', className: 'w-14 px-3 py-3 text-center font-medium', cell: (row) => <span className="block text-center font-semibold">{row.no}</span> },
{
key: 'name',
header: '조직명',