feat(#248): admin tag page complete overhaul — tree panel, merge, subtree delete, new edit components #249

Merged
marcel merged 51 commits from feat/issue-221-tag-hierarchy into main 2026-04-17 10:24:10 +02:00
Showing only changes of commit c3e007d421 - Show all commits

View File

@@ -740,6 +740,22 @@ export interface paths {
patch?: never;
trace?: never;
};
"/api/tags/tree": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["getTagTree"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/stats": {
parameters: {
query?: never;
@@ -1190,10 +1206,19 @@ export interface components {
notifyOnReply?: boolean;
notifyOnMention?: boolean;
};
TagUpdateDTO: {
name?: string;
/** Format: uuid */
parentId?: string;
color?: string;
};
Tag: {
/** Format: uuid */
id: string;
name: string;
/** Format: uuid */
parentId?: string;
color?: string;
};
PersonUpdateDTO: {
title?: string;
@@ -1533,6 +1558,15 @@ export interface components {
/** Format: int32 */
reviewedBlockCount: number;
};
TagTreeNodeDTO: {
/** Format: uuid */
id?: string;
name?: string;
color?: string;
/** Format: int32 */
documentCount?: number;
children?: components["schemas"]["TagTreeNodeDTO"][];
};
StatsDTO: {
/** Format: int64 */
totalPersons?: number;
@@ -1596,13 +1630,11 @@ export interface components {
timeout?: number;
};
PageNotificationDTO: {
/** Format: int64 */
totalElements?: number;
/** Format: int32 */
totalPages?: number;
/** Format: int64 */
totalElements?: number;
pageable?: components["schemas"]["PageableObject"];
first?: boolean;
last?: boolean;
/** Format: int32 */
size?: number;
content?: components["schemas"]["NotificationDTO"][];
@@ -1611,6 +1643,8 @@ export interface components {
sort?: components["schemas"]["SortObject"];
/** Format: int32 */
numberOfElements?: number;
first?: boolean;
last?: boolean;
empty?: boolean;
};
PageableObject: {
@@ -1875,9 +1909,7 @@ export interface operations {
};
requestBody: {
content: {
"application/json": {
[key: string]: string;
};
"application/json": components["schemas"]["TagUpdateDTO"];
};
};
responses: {
@@ -3279,6 +3311,26 @@ export interface operations {
};
};
};
getTagTree: {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown;
};
content: {
"*/*": components["schemas"]["TagTreeNodeDTO"][];
};
};
};
};
getStats: {
parameters: {
query?: never;
@@ -3668,6 +3720,8 @@ export interface operations {
sort?: "DATE" | "TITLE" | "SENDER" | "RECEIVER" | "UPLOAD_DATE" | "RELEVANCE";
/** @description Sort direction: ASC or DESC */
dir?: string;
/** @description Tag operator: AND (default) or OR */
tagOp?: string;
};
header?: never;
path?: never;