0761bbd8c1
LST-68 (2.6) front. Completes the Integration module and Phase 2. - New frontend/modules/integration/ layer (auto-detected): services (gitea, bookstack, zimbra, share, share-settings) + their DTOs, and the useShareStatus composable. - Consumers repointed to ~/modules/integration/...: admin tabs (Gitea/BookStack/Zimbra/Share), PM task sections (TaskGitSection, TaskBookStackLinks, TaskDocumentShareLinker), ProjectDrawer, TaskModal, pages/documents.vue, components/share/SharedFilePreview.vue. - Admin tabs, SharedFilePreview and documents/admin pages stay at their location (only imports updated). i18n stays global. nuxt build passes; all routes preserved.
54 lines
973 B
TypeScript
54 lines
973 B
TypeScript
export type FileEntry = {
|
|
name: string
|
|
path: string
|
|
isDir: boolean
|
|
size: number
|
|
modifiedAt: number | null
|
|
mimeType: string
|
|
}
|
|
|
|
export type Breadcrumb = {
|
|
name: string
|
|
path: string
|
|
}
|
|
|
|
export type ShareBrowseResult = {
|
|
path: string
|
|
breadcrumb: Breadcrumb[]
|
|
entries: FileEntry[]
|
|
}
|
|
|
|
export type ShareSearchResult = {
|
|
query: string
|
|
entries: FileEntry[]
|
|
}
|
|
|
|
export type ShareStatus = {
|
|
enabled: boolean
|
|
}
|
|
|
|
export type ShareSettings = {
|
|
host: string | null
|
|
shareName: string | null
|
|
basePath: string | null
|
|
domain: string | null
|
|
username: string | null
|
|
enabled: boolean
|
|
hasPassword: boolean
|
|
}
|
|
|
|
export type ShareSettingsWrite = {
|
|
host: string | null
|
|
shareName: string | null
|
|
basePath: string | null
|
|
domain: string | null
|
|
username: string | null
|
|
password?: string | null
|
|
enabled: boolean
|
|
}
|
|
|
|
export type ShareTestResult = {
|
|
success: boolean
|
|
message: string | null
|
|
}
|