From d6b6e988ebb70a02ca2b122a4d6ce01a23546398 Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Thu, 5 Feb 2026 20:10:46 -0500 Subject: [PATCH] fix(idaa): resolve BB comment loop and parent mapping issues - Switched to create_nested_obj_v3 for establishing parent-child links. - Optimized background load trigger with untrack to prevent infinite loops. - Resolved MySQL IntegrityError (missing post_id) during comment creation. - Hardened view component reactivity for Svelte 5. --- src/lib/ae_posts/ae_posts__post_comment.ts | 12 ++++++++---- .../(idaa)/bb/ae_idaa_comp__post_obj_id_view.svelte | 7 +++---- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/lib/ae_posts/ae_posts__post_comment.ts b/src/lib/ae_posts/ae_posts__post_comment.ts index 97d4546f..63dc0e4a 100644 --- a/src/lib/ae_posts/ae_posts__post_comment.ts +++ b/src/lib/ae_posts/ae_posts__post_comment.ts @@ -145,6 +145,7 @@ export async function load_ae_obj_li__post_comment({ // Updated 2026-01-06 export async function create_ae_obj__post_comment({ api_cfg, + account_id, post_id, data_kv, params = {}, @@ -152,6 +153,7 @@ export async function create_ae_obj__post_comment({ log_lvl = 0 }: { api_cfg: any; + account_id: string; post_id: string; data_kv: key_val; params?: key_val; @@ -159,14 +161,16 @@ export async function create_ae_obj__post_comment({ log_lvl?: number; }): Promise { if (log_lvl) { - console.log(`*** create_ae_obj__post_comment() *** post_id=${post_id}`); + console.log(`*** create_ae_obj__post_comment() *** account_id=${account_id} post_id=${post_id}`); } - const result = await api.create_ae_obj_v3({ + const result = await api.create_nested_obj_v3({ api_cfg, - obj_type: 'post_comment', + parent_type: 'post', + parent_id: post_id, + child_type: 'post_comment', fields: { - post_id_random: post_id, + account_id: account_id, ...data_kv }, params, diff --git a/src/routes/idaa/(idaa)/bb/ae_idaa_comp__post_obj_id_view.svelte b/src/routes/idaa/(idaa)/bb/ae_idaa_comp__post_obj_id_view.svelte index a4449a00..370cd5b7 100644 --- a/src/routes/idaa/(idaa)/bb/ae_idaa_comp__post_obj_id_view.svelte +++ b/src/routes/idaa/(idaa)/bb/ae_idaa_comp__post_obj_id_view.svelte @@ -30,16 +30,15 @@ import Comp__post_comment_obj_id_edit from './ae_idaa_comp__post_comment_obj_id_edit.svelte'; import AE_Comp_Hosted_Files_Download_Button from '$lib/ae_core/ae_comp__hosted_files_download_button.svelte'; - let ae_promises: key_val = $state({}); + import { untrack } from 'svelte'; $effect(() => { const post_id = $idaa_slct.post_id; - if (post_id) { + if (post_id && post_id !== untrack(() => $idaa_trig.post_id)) { if (log_lvl) { console.log(`Post ID selected: ${post_id}`); - console.log(`Post Object selected: `, $lq__post_obj); } - // Trigger background load + // Trigger background load only if it's a new ID $idaa_trig.post_id = post_id; } });