Migrate Content and Storage modules to unified type system

- Added ae_HostedFile, ae_HostedFileLink, ae_DataStore, ae_Post, ae_PostComment, ae_Page, ae_Archive, and ae_ArchiveContent to ae_types.ts.
- Replaced local interfaces in core__hosted_files.ts and core__data_store.ts with unified imports.
- Replaced local interfaces in ae_archives/*.ts with unified imports.
- Standardized Promise return types for all core data loading, creation, search, and update functions across migrated modules.
- Synchronized storage and archival modules with Backend V3 field naming and Triple-ID patterns.
This commit is contained in:
Scott Idem
2026-01-08 13:44:07 -05:00
parent 113905f731
commit c46485a954
5 changed files with 150 additions and 33 deletions

View File

@@ -93,6 +93,9 @@ export interface ae_Journal extends ae_BaseObj {
journal_id_random: string;
account_id: string;
account_id_random: string;
journal_entry_count?: number;
file_count?: number;
}
/**
@@ -475,3 +478,135 @@ export interface ae_EventTrack extends ae_BaseObj {
start_datetime?: string | Date;
end_datetime?: string | Date;
}
/**
* HostedFile - A file stored on the system
*/
export interface ae_HostedFile extends ae_BaseObj {
hosted_file_id: string;
hosted_file_id_random: string;
account_id: string;
account_id_random: string;
hash_sha256?: string;
subdirectory_path?: string;
filename?: string;
extension?: string;
mimetype?: string;
size?: number;
}
/**
* HostedFileLink - A many-to-many link between objects and files
*/
export interface ae_HostedFileLink {
id: string;
account_id_random: string;
hosted_file_id_random: string;
link_to_type: string;
link_to_id_random: string;
created_on: string | Date;
updated_on: string | Date;
}
/**
* DataStore - Generic JSON/Text storage
*/
export interface ae_DataStore extends ae_BaseObj {
data_store_id: string;
data_store_id_random: string;
account_id: string;
account_id_random: string;
for_type?: string;
for_id_random?: string;
type?: string;
json_str?: any;
text?: string;
}
/**
* Post - A message board entry
*/
export interface ae_Post extends ae_BaseObj {
post_id: string;
post_id_random: string;
account_id: string;
account_id_random: string;
title: string;
content: string;
type?: string;
anonymous: boolean;
full_name?: string;
email?: string;
post_comment_count?: number;
approve?: boolean;
ready?: boolean;
}
/**
* PostComment - A reply to a post
*/
export interface ae_PostComment extends ae_BaseObj {
post_comment_id: string;
post_comment_id_random: string;
post_id_random: string;
content: string;
anonymous: boolean;
full_name?: string;
}
/**
* Page - A custom CMS page
*/
export interface ae_Page extends ae_BaseObj {
page_id: string;
page_id_random: string;
account_id: string;
account_id_random: string;
alias: string;
title: string;
body: string;
authentication_required: boolean;
}
/**
* Archive - A collection of archival content
*/
export interface ae_Archive extends ae_BaseObj {
archive_id: string;
archive_id_random: string;
account_id: string;
account_id_random: string;
archive_type?: string;
content_html?: string;
original_datetime?: string | Date;
original_location?: string;
archive_content_count?: number;
}
/**
* ArchiveContent - A discrete item within an archive
*/
export interface ae_ArchiveContent extends ae_BaseObj {
archive_content_id: string;
archive_content_id_random: string;
archive_id_random: string;
archive_content_type?: string;
content_html?: string;
url?: string;
hosted_file_id_random?: string;
filename?: string;
}