fix: resolve TypeErrors in core, events, and journals modules
- Core: Use FormData in video clip components to fix EventTarget errors. - DB: Rename 'File' to 'ae_LocalFile' in db_core to prevent DOM type shadowing. - API: Strictly type 'order_by_li' across archives, events, and journals to match API definition. - API: Fix 'enabled'/'hidden' parameter types in search functions. - Generics: Add 'any' cast to 'processed_obj' in generic processors to fix indexing errors. - Journals: Update journal_entry creation to return null on failure, fix missing ID fields in DB save.
This commit is contained in:
@@ -110,7 +110,7 @@ export async function load_ae_obj_li__archive({
|
|||||||
name: 'ASC',
|
name: 'ASC',
|
||||||
updated_on: 'DESC',
|
updated_on: 'DESC',
|
||||||
created_on: 'DESC'
|
created_on: 'DESC'
|
||||||
},
|
} as const,
|
||||||
params = {},
|
params = {},
|
||||||
try_cache = true,
|
try_cache = true,
|
||||||
log_lvl = 0
|
log_lvl = 0
|
||||||
@@ -124,6 +124,7 @@ export async function load_ae_obj_li__archive({
|
|||||||
view?: string;
|
view?: string;
|
||||||
limit?: number;
|
limit?: number;
|
||||||
offset?: number;
|
offset?: number;
|
||||||
|
order_by_li?: Record<string, 'ASC' | 'DESC'> | Record<string, 'ASC' | 'DESC'>[];
|
||||||
params?: key_val;
|
params?: key_val;
|
||||||
try_cache?: boolean;
|
try_cache?: boolean;
|
||||||
log_lvl?: number;
|
log_lvl?: number;
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ export async function load_ae_obj_li__archive_content({
|
|||||||
name: 'ASC',
|
name: 'ASC',
|
||||||
updated_on: 'DESC',
|
updated_on: 'DESC',
|
||||||
created_on: 'DESC'
|
created_on: 'DESC'
|
||||||
},
|
} as const,
|
||||||
params = {},
|
params = {},
|
||||||
try_cache = true,
|
try_cache = true,
|
||||||
log_lvl = 0
|
log_lvl = 0
|
||||||
@@ -96,6 +96,7 @@ export async function load_ae_obj_li__archive_content({
|
|||||||
view?: string;
|
view?: string;
|
||||||
limit?: number;
|
limit?: number;
|
||||||
offset?: number;
|
offset?: number;
|
||||||
|
order_by_li?: Record<string, 'ASC' | 'DESC'> | Record<string, 'ASC' | 'DESC'>[];
|
||||||
params?: key_val;
|
params?: key_val;
|
||||||
try_cache?: boolean;
|
try_cache?: boolean;
|
||||||
log_lvl?: number;
|
log_lvl?: number;
|
||||||
@@ -166,7 +167,7 @@ export async function create_ae_obj__archive_content({
|
|||||||
|
|
||||||
if (!archive_id) {
|
if (!archive_id) {
|
||||||
console.log(`ERROR: Archives - Content - archive_id required to create`);
|
console.log(`ERROR: Archives - Content - archive_id required to create`);
|
||||||
return false;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
const result = await api.create_ae_obj_v3({
|
const result = await api.create_ae_obj_v3({
|
||||||
|
|||||||
@@ -89,7 +89,15 @@
|
|||||||
submit_status = 'clipping';
|
submit_status = 'clipping';
|
||||||
clip_complete = false;
|
clip_complete = false;
|
||||||
|
|
||||||
let hosted_file_id = event.target.hosted_file_id.value;
|
const form = event.target as HTMLFormElement;
|
||||||
|
const formData = new FormData(form);
|
||||||
|
|
||||||
|
let hosted_file_id = formData.get('hosted_file_id') as string;
|
||||||
|
let start_time = formData.get('start_time') as string;
|
||||||
|
let end_time = formData.get('end_time') as string;
|
||||||
|
let reencode = formData.get('reencode') as string;
|
||||||
|
let scale_down = formData.get('scale_down') as string;
|
||||||
|
let new_filename = formData.get('new_filename') as string;
|
||||||
|
|
||||||
$ae_sess.files.processed_file_kv[hosted_file_id] = {};
|
$ae_sess.files.processed_file_kv[hosted_file_id] = {};
|
||||||
$ae_sess.files.processed_file_kv[hosted_file_id].submit_status = 'clipping';
|
$ae_sess.files.processed_file_kv[hosted_file_id].submit_status = 'clipping';
|
||||||
@@ -98,12 +106,11 @@
|
|||||||
// $ae_sess.files.disable_submit__hosted_file_obj = true;
|
// $ae_sess.files.disable_submit__hosted_file_obj = true;
|
||||||
$ae_loc.files.processed_file_kv[hosted_file_id] = {};
|
$ae_loc.files.processed_file_kv[hosted_file_id] = {};
|
||||||
$ae_loc.files.processed_file_kv[hosted_file_id].submit_status = 'clipping';
|
$ae_loc.files.processed_file_kv[hosted_file_id].submit_status = 'clipping';
|
||||||
$ae_loc.files.processed_file_kv[hosted_file_id].start_time = event.target.start_time.value;
|
$ae_loc.files.processed_file_kv[hosted_file_id].start_time = start_time;
|
||||||
$ae_loc.files.processed_file_kv[hosted_file_id].end_time = event.target.end_time.value;
|
$ae_loc.files.processed_file_kv[hosted_file_id].end_time = end_time;
|
||||||
$ae_loc.files.processed_file_kv[hosted_file_id].reencode = event.target.reencode.value;
|
$ae_loc.files.processed_file_kv[hosted_file_id].reencode = reencode;
|
||||||
$ae_loc.files.processed_file_kv[hosted_file_id].scale_down = event.target.scale_down.value;
|
$ae_loc.files.processed_file_kv[hosted_file_id].scale_down = scale_down;
|
||||||
$ae_loc.files.processed_file_kv[hosted_file_id].new_filename =
|
$ae_loc.files.processed_file_kv[hosted_file_id].new_filename = new_filename;
|
||||||
event.target.new_filename.value;
|
|
||||||
$ae_loc.files.processed_file_kv[hosted_file_id].clip_complete = false;
|
$ae_loc.files.processed_file_kv[hosted_file_id].clip_complete = false;
|
||||||
|
|
||||||
let endpoint = `/hosted_file/${hosted_file_id}/clip_video`;
|
let endpoint = `/hosted_file/${hosted_file_id}/clip_video`;
|
||||||
@@ -111,13 +118,13 @@
|
|||||||
let params = {
|
let params = {
|
||||||
link_to_type: link_to_type,
|
link_to_type: link_to_type,
|
||||||
link_to_id: link_to_id,
|
link_to_id: link_to_id,
|
||||||
filename_no_ext: event.target.new_filename.value.replace('.mp4', ''),
|
filename_no_ext: new_filename.replace('.mp4', ''),
|
||||||
from_type: 'mp4', // Video file type being converted
|
from_type: 'mp4', // Video file type being converted
|
||||||
to_type: 'mp4', // Video file type to convert to
|
to_type: 'mp4', // Video file type to convert to
|
||||||
start_time: event.target.start_time.value,
|
start_time: start_time,
|
||||||
end_time: event.target.end_time.value,
|
end_time: end_time,
|
||||||
reencode: event.target.reencode.value,
|
reencode: reencode,
|
||||||
scale_down: event.target.scale_down.value
|
scale_down: scale_down
|
||||||
};
|
};
|
||||||
|
|
||||||
ae_promises[hosted_file_id] = {};
|
ae_promises[hosted_file_id] = {};
|
||||||
|
|||||||
@@ -91,11 +91,20 @@
|
|||||||
|
|
||||||
let hosted_file_results;
|
let hosted_file_results;
|
||||||
|
|
||||||
|
const form = event.target as HTMLFormElement;
|
||||||
|
const formData = new FormData(form);
|
||||||
|
const start_time = formData.get('start_time') as string;
|
||||||
|
const end_time = formData.get('end_time') as string;
|
||||||
|
const reencode = formData.get('reencode') as string;
|
||||||
|
|
||||||
|
// Access file input by name or ID
|
||||||
|
const file_input = form.elements.namedItem(input_name) as HTMLInputElement;
|
||||||
|
|
||||||
form_kv = {
|
form_kv = {
|
||||||
start_time: event.target.start_time.value,
|
start_time: start_time,
|
||||||
end_time: event.target.end_time.value,
|
end_time: end_time,
|
||||||
reencode: event.target.reencode.value,
|
reencode: reencode,
|
||||||
video_file: event.target.file_list.files[0]
|
video_file: file_input?.files?.[0]
|
||||||
};
|
};
|
||||||
|
|
||||||
// const form_data = new FormData();
|
// const form_data = new FormData();
|
||||||
@@ -122,14 +131,14 @@
|
|||||||
|
|
||||||
// params = null;
|
// params = null;
|
||||||
|
|
||||||
if (event.target[input_element_id].files.length > 0) {
|
if (file_input && file_input.files && file_input.files.length > 0) {
|
||||||
task_id = link_to_id; // Ideally this should be the file hash, but we may be uploading multiple files at once. This should be done with a loop instead?
|
task_id = link_to_id; // Ideally this should be the file hash, but we may be uploading multiple files at once. This should be done with a loop instead?
|
||||||
|
|
||||||
// Loop through each file and upload them individually in event.target[input_element_id].files
|
// Loop through each file and upload them individually in event.target[input_element_id].files
|
||||||
// The task_id should be the file hash.
|
// The task_id should be the file hash.
|
||||||
// processed_file_list[i] has the file hash_sha256, hash_sha256_match, warnings, uploaded, uploaded_bytes, filename, and file_size_bytes.
|
// processed_file_list[i] has the file hash_sha256, hash_sha256_match, warnings, uploaded, uploaded_bytes, filename, and file_size_bytes.
|
||||||
for (let i = 0; i < event.target[input_element_id].files.length; i++) {
|
for (let i = 0; i < file_input.files.length; i++) {
|
||||||
let tmp_file = event.target[input_element_id].files[i];
|
let tmp_file = file_input.files[i];
|
||||||
|
|
||||||
task_id = $ae_sess.files.processed_file_list[i].hash_sha256;
|
task_id = $ae_sess.files.processed_file_list[i].hash_sha256;
|
||||||
|
|
||||||
@@ -144,7 +153,7 @@
|
|||||||
// hosted_file_results = await handle_input_upload_files(event.target[input_element_id].files, task_id);
|
// hosted_file_results = await handle_input_upload_files(event.target[input_element_id].files, task_id);
|
||||||
$ae_sess.files.processed_file_list = [];
|
$ae_sess.files.processed_file_list = [];
|
||||||
$ae_sess = $ae_sess;
|
$ae_sess = $ae_sess;
|
||||||
event.target.reset();
|
form.reset();
|
||||||
// await tick();
|
// await tick();
|
||||||
|
|
||||||
if (log_lvl) {
|
if (log_lvl) {
|
||||||
|
|||||||
@@ -263,7 +263,6 @@ export function db_save_ae_obj_li__hosted_file({
|
|||||||
try {
|
try {
|
||||||
const id_random = await db_core.file.put({
|
const id_random = await db_core.file.put({
|
||||||
id: obj.hosted_file_id_random,
|
id: obj.hosted_file_id_random,
|
||||||
id_random: obj.hosted_file_id_random,
|
|
||||||
hosted_file_id: obj.hosted_file_id_random,
|
hosted_file_id: obj.hosted_file_id_random,
|
||||||
hosted_file_id_random: obj.hosted_file_id_random,
|
hosted_file_id_random: obj.hosted_file_id_random,
|
||||||
|
|
||||||
@@ -274,6 +273,7 @@ export function db_save_ae_obj_li__hosted_file({
|
|||||||
for_id_random: obj.for_id_random,
|
for_id_random: obj.for_id_random,
|
||||||
|
|
||||||
account_id: obj.account_id_random,
|
account_id: obj.account_id_random,
|
||||||
|
account_id_random: obj.account_id_random,
|
||||||
|
|
||||||
filename: obj.filename,
|
filename: obj.filename,
|
||||||
extension: obj.extension,
|
extension: obj.extension,
|
||||||
@@ -282,8 +282,8 @@ export function db_save_ae_obj_li__hosted_file({
|
|||||||
|
|
||||||
enable: obj.enable,
|
enable: obj.enable,
|
||||||
hide: obj.hide,
|
hide: obj.hide,
|
||||||
// priority: obj.priority,
|
priority: obj.priority,
|
||||||
// sort: obj.sort,
|
sort: obj.sort,
|
||||||
group: obj.group,
|
group: obj.group,
|
||||||
notes: obj.notes,
|
notes: obj.notes,
|
||||||
created_on: obj.created_on,
|
created_on: obj.created_on,
|
||||||
|
|||||||
@@ -14,7 +14,12 @@ import type {
|
|||||||
// kv = key value list
|
// kv = key value list
|
||||||
|
|
||||||
// Updated 2026-01-09 - Unified Types
|
// Updated 2026-01-09 - Unified Types
|
||||||
export interface File extends ae_HostedFile {
|
export interface ae_LocalFile extends ae_HostedFile {
|
||||||
|
// Link properties (present in Dexie schema)
|
||||||
|
for_type?: string;
|
||||||
|
for_id?: string;
|
||||||
|
for_id_random?: string;
|
||||||
|
|
||||||
// Legacy mapping support
|
// Legacy mapping support
|
||||||
content_type?: string;
|
content_type?: string;
|
||||||
filename_no_ext?: string;
|
filename_no_ext?: string;
|
||||||
@@ -54,7 +59,7 @@ export interface User extends ae_User {
|
|||||||
|
|
||||||
// Updated 2026-01-09
|
// Updated 2026-01-09
|
||||||
export class MySubClassedDexie extends Dexie {
|
export class MySubClassedDexie extends Dexie {
|
||||||
file!: Table<File>;
|
file!: Table<ae_LocalFile>;
|
||||||
person!: Table<Person>;
|
person!: Table<Person>;
|
||||||
user!: Table<User>;
|
user!: Table<User>;
|
||||||
account!: Table<ae_Account>;
|
account!: Table<ae_Account>;
|
||||||
|
|||||||
@@ -125,6 +125,7 @@ export async function load_ae_obj_li__event({
|
|||||||
view?: string;
|
view?: string;
|
||||||
limit?: number;
|
limit?: number;
|
||||||
offset?: number;
|
offset?: number;
|
||||||
|
order_by_li?: Record<string, 'ASC' | 'DESC'> | Record<string, 'ASC' | 'DESC'>[];
|
||||||
params?: key_val;
|
params?: key_val;
|
||||||
try_cache?: boolean;
|
try_cache?: boolean;
|
||||||
log_lvl?: number;
|
log_lvl?: number;
|
||||||
|
|||||||
@@ -117,7 +117,7 @@ async function _process_generic_props<T extends Record<string, any>>({
|
|||||||
for (const key in processed_obj) {
|
for (const key in processed_obj) {
|
||||||
if (key.endsWith('_random')) {
|
if (key.endsWith('_random')) {
|
||||||
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
||||||
processed_obj[newKey] = processed_obj[key];
|
(processed_obj as any)[newKey] = processed_obj[key];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Ensure 'id' is set from '[obj_type]_id_random'
|
// Ensure 'id' is set from '[obj_type]_id_random'
|
||||||
|
|||||||
@@ -132,6 +132,7 @@ export async function load_ae_obj_li__event_device({
|
|||||||
hidden?: 'hidden' | 'all' | 'not_hidden' | undefined; // all, hidden, not_hidden
|
hidden?: 'hidden' | 'all' | 'not_hidden' | undefined; // all, hidden, not_hidden
|
||||||
limit?: number; // 99
|
limit?: number; // 99
|
||||||
offset?: number; // 0
|
offset?: number; // 0
|
||||||
|
order_by_li?: Record<string, 'ASC' | 'DESC'> | Record<string, 'ASC' | 'DESC'>[];
|
||||||
params?: key_val;
|
params?: key_val;
|
||||||
try_cache?: boolean;
|
try_cache?: boolean;
|
||||||
log_lvl?: number;
|
log_lvl?: number;
|
||||||
@@ -485,8 +486,8 @@ export async function search__event_device({
|
|||||||
console.log(`*** search__event_device() *** event_id=${event_id}`);
|
console.log(`*** search__event_device() *** event_id=${event_id}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
const enabled: string = params.qry__enabled ?? 'enabled'; // all, disabled, enabled
|
const enabled: 'enabled' | 'all' | 'not_enabled' = (params.qry__enabled as any) ?? 'enabled';
|
||||||
const hidden: string = params.qry__hidden ?? 'not_hidden'; // all, hidden, not_hidden
|
const hidden: 'hidden' | 'all' | 'not_hidden' = (params.qry__hidden as any) ?? 'not_hidden';
|
||||||
const limit: number = params.qry__limit ?? 25; // 99
|
const limit: number = params.qry__limit ?? 25; // 99
|
||||||
const offset: number = params.qry__offset ?? 0; // 0
|
const offset: number = params.qry__offset ?? 0; // 0
|
||||||
|
|
||||||
@@ -720,7 +721,7 @@ async function _process_generic_props<T extends Record<string, any>>({
|
|||||||
for (const key in processed_obj) {
|
for (const key in processed_obj) {
|
||||||
if (key.endsWith('_random')) {
|
if (key.endsWith('_random')) {
|
||||||
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
||||||
processed_obj[newKey] = processed_obj[key];
|
(processed_obj as any)[newKey] = processed_obj[key];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Ensure 'id' is set from '[obj_type]_id_random'
|
// Ensure 'id' is set from '[obj_type]_id_random'
|
||||||
|
|||||||
@@ -560,7 +560,7 @@ export async function search__event_file({
|
|||||||
like_search_qry_str?: null | string;
|
like_search_qry_str?: null | string;
|
||||||
like_presentation_search_qry_str?: null | string;
|
like_presentation_search_qry_str?: null | string;
|
||||||
like_file_search_qry_str?: null | string;
|
like_file_search_qry_str?: null | string;
|
||||||
order_by_li?: key_val;
|
order_by_li?: Record<string, 'ASC' | 'DESC'> | Record<string, 'ASC' | 'DESC'>[];
|
||||||
params?: any;
|
params?: any;
|
||||||
try_cache?: boolean;
|
try_cache?: boolean;
|
||||||
log_lvl?: number;
|
log_lvl?: number;
|
||||||
@@ -569,8 +569,8 @@ export async function search__event_file({
|
|||||||
console.log(`*** search__event_file() *** event_id=${event_id}`);
|
console.log(`*** search__event_file() *** event_id=${event_id}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
const enabled: string = params.qry__enabled ?? 'enabled'; // all, disabled, enabled
|
const enabled: 'enabled' | 'all' | 'not_enabled' = (params.qry__enabled as any) ?? 'enabled';
|
||||||
const hidden: string = params.qry__hidden ?? 'not_hidden'; // all, hidden, not_hidden
|
const hidden: 'hidden' | 'all' | 'not_hidden' = (params.qry__hidden as any) ?? 'not_hidden';
|
||||||
const limit: number = params.qry__limit ?? 25; // 99
|
const limit: number = params.qry__limit ?? 25; // 99
|
||||||
const offset: number = params.qry__offset ?? 0; // 0
|
const offset: number = params.qry__offset ?? 0; // 0
|
||||||
|
|
||||||
@@ -800,7 +800,7 @@ async function _process_generic_props<T extends Record<string, any>>({
|
|||||||
for (const key in processed_obj) {
|
for (const key in processed_obj) {
|
||||||
if (key.endsWith('_random')) {
|
if (key.endsWith('_random')) {
|
||||||
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
||||||
processed_obj[newKey] = processed_obj[key];
|
(processed_obj as any)[newKey] = processed_obj[key];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Ensure 'id' is set from '[obj_type]_id_random'
|
// Ensure 'id' is set from '[obj_type]_id_random'
|
||||||
|
|||||||
@@ -176,6 +176,7 @@ export async function load_ae_obj_li__event_location({
|
|||||||
hidden?: 'hidden' | 'all' | 'not_hidden' | undefined; // all, hidden, not_hidden
|
hidden?: 'hidden' | 'all' | 'not_hidden' | undefined; // all, hidden, not_hidden
|
||||||
limit?: number; // 99
|
limit?: number; // 99
|
||||||
offset?: number; // 0
|
offset?: number; // 0
|
||||||
|
order_by_li?: Record<string, 'ASC' | 'DESC'> | Record<string, 'ASC' | 'DESC'>[];
|
||||||
params?: key_val;
|
params?: key_val;
|
||||||
try_cache?: boolean;
|
try_cache?: boolean;
|
||||||
log_lvl?: number;
|
log_lvl?: number;
|
||||||
@@ -594,8 +595,8 @@ export async function search__event_location({
|
|||||||
console.log(`*** search__event_location() *** event_id=${event_id}`);
|
console.log(`*** search__event_location() *** event_id=${event_id}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
const enabled: string = params.qry__enabled ?? 'enabled'; // all, disabled, enabled
|
const enabled: 'enabled' | 'all' | 'not_enabled' = (params.qry__enabled as any) ?? 'enabled';
|
||||||
const hidden: string = params.qry__hidden ?? 'not_hidden'; // all, hidden, not_hidden
|
const hidden: 'hidden' | 'all' | 'not_hidden' = (params.qry__hidden as any) ?? 'not_hidden';
|
||||||
const limit: number = params.qry__limit ?? 25; // 99
|
const limit: number = params.qry__limit ?? 25; // 99
|
||||||
const offset: number = params.qry__offset ?? 0; // 0
|
const offset: number = params.qry__offset ?? 0; // 0
|
||||||
|
|
||||||
@@ -809,7 +810,7 @@ async function _process_generic_props<T extends Record<string, any>>({
|
|||||||
for (const key in processed_obj) {
|
for (const key in processed_obj) {
|
||||||
if (key.endsWith('_random')) {
|
if (key.endsWith('_random')) {
|
||||||
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
||||||
processed_obj[newKey] = processed_obj[key];
|
(processed_obj as any)[newKey] = processed_obj[key];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Ensure 'id' is set from '[obj_type]_id_random'
|
// Ensure 'id' is set from '[obj_type]_id_random'
|
||||||
|
|||||||
@@ -676,7 +676,7 @@ async function _process_generic_props<T extends Record<string, any>>({
|
|||||||
for (const key in processed_obj) {
|
for (const key in processed_obj) {
|
||||||
if (key.endsWith('_random')) {
|
if (key.endsWith('_random')) {
|
||||||
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
||||||
processed_obj[newKey] = processed_obj[key];
|
(processed_obj as any)[newKey] = processed_obj[key];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Ensure 'id' is set from '[obj_type]_id_random'
|
// Ensure 'id' is set from '[obj_type]_id_random'
|
||||||
|
|||||||
@@ -871,7 +871,7 @@ async function _process_generic_props<T extends Record<string, any>>({
|
|||||||
for (const key in processed_obj) {
|
for (const key in processed_obj) {
|
||||||
if (key.endsWith('_random')) {
|
if (key.endsWith('_random')) {
|
||||||
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
||||||
processed_obj[newKey] = processed_obj[key];
|
(processed_obj as any)[newKey] = processed_obj[key];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Ensure 'id' is set from '[obj_type]_id_random'
|
// Ensure 'id' is set from '[obj_type]_id_random'
|
||||||
|
|||||||
@@ -1282,7 +1282,7 @@ async function _process_generic_props<T extends Record<string, any>>({
|
|||||||
for (const key in processed_obj) {
|
for (const key in processed_obj) {
|
||||||
if (key.endsWith('_random')) {
|
if (key.endsWith('_random')) {
|
||||||
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
const newKey = key.slice(0, -7); // Remove '_random' suffix
|
||||||
processed_obj[newKey] = processed_obj[key];
|
(processed_obj as any)[newKey] = processed_obj[key];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Ensure 'id' is set from '[obj_type]_id_random'
|
// Ensure 'id' is set from '[obj_type]_id_random'
|
||||||
|
|||||||
@@ -202,7 +202,7 @@ export async function create_ae_obj__journal_entry({
|
|||||||
|
|
||||||
if (!journal_id) {
|
if (!journal_id) {
|
||||||
console.log(`ERROR: Journals - Entry - journal_id required to create`);
|
console.log(`ERROR: Journals - Entry - journal_id required to create`);
|
||||||
return false;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
ae_promises.create__journal_entry = await api
|
ae_promises.create__journal_entry = await api
|
||||||
@@ -601,8 +601,10 @@ export async function db_save_ae_obj_li__journal_entry({
|
|||||||
const obj_record = {
|
const obj_record = {
|
||||||
id: obj.journal_entry_id_random,
|
id: obj.journal_entry_id_random,
|
||||||
journal_entry_id: obj.journal_entry_id_random,
|
journal_entry_id: obj.journal_entry_id_random,
|
||||||
|
journal_entry_id_random: obj.journal_entry_id_random,
|
||||||
|
|
||||||
journal_id: obj.journal_id_random,
|
journal_id: obj.journal_id_random,
|
||||||
|
journal_id_random: obj.journal_id_random,
|
||||||
|
|
||||||
code: obj.code,
|
code: obj.code,
|
||||||
|
|
||||||
@@ -633,14 +635,14 @@ export async function db_save_ae_obj_li__journal_entry({
|
|||||||
// description: obj.description,
|
// description: obj.description,
|
||||||
|
|
||||||
content: obj.content,
|
content: obj.content,
|
||||||
content_md_html: content_md_html,
|
content_md_html: content_md_html ?? undefined,
|
||||||
// content_md_html_alt: content_md_html_alt,
|
// content_md_html_alt: content_md_html_alt,
|
||||||
content_html: obj.content_html,
|
content_html: obj.content_html,
|
||||||
content_json: obj.content_json,
|
content_json: obj.content_json,
|
||||||
content_encrypted: obj.content_encrypted,
|
content_encrypted: obj.content_encrypted,
|
||||||
|
|
||||||
history: obj.history,
|
history: obj.history,
|
||||||
history_md_html: history_md_html,
|
history_md_html: history_md_html ?? undefined,
|
||||||
history_encrypted: obj.history_encrypted,
|
history_encrypted: obj.history_encrypted,
|
||||||
|
|
||||||
passcode_hash: obj.passcode_hash,
|
passcode_hash: obj.passcode_hash,
|
||||||
|
|||||||
Reference in New Issue
Block a user