Finally got things working. Store act odd when being set under layout.ts?

This commit is contained in:
Scott Idem
2024-02-26 21:04:17 -05:00
parent 060c0500d3
commit 9540aefd50
5 changed files with 231 additions and 103 deletions

View File

@@ -10,7 +10,7 @@ type key_val = {
};
function handle_load_ae_obj_id__site_domain({fqdn, try_cache=false}) {
async function handle_load_ae_obj_id__site_domain({fqdn, try_cache=false}) {
console.log(`*** handle_load_ae_obj_id__site_domain() *** fqdn=${fqdn}`);
let params = {};
@@ -47,8 +47,8 @@ function handle_load_ae_obj_id__site_domain({fqdn, try_cache=false}) {
return ae_site_domain_obj_get_promise;
}
let data_store_obj_get_promises: key_val = {};
function handle_get_data_store_obj_w_code({ code=null, data_type='text' }) {
// let data_store_obj_get_promises: key_val = {};
async function handle_get_data_store_obj_w_code({ code=null, data_type='text' }) {
console.log(`*** handle_get_data_store_obj_w_code() *** code=${code}`);
if (!code) {
@@ -88,15 +88,22 @@ function handle_get_data_store_obj_w_code({ code=null, data_type='text' }) {
}
export function load({ params, url }) { // route
export async function load({ params, url }) { // route
console.log(`Svelte root layout.ts data = params:`, params);
// console.log(`Svelte root layout.ts data = route:`, route);
console.log(`Svelte root layout.ts data = url:`, url);
let ae_core: key_val = {}
let ae_loc_tmp = get(ae_loc);
console.log(`ae_loc = `, ae_loc_tmp);
let ds_code_li: null|key_val = ae_loc_tmp.ds;
console.log(`ae_ ds_code_li = `, ds_code_li);
let ds_code: null|string = null;
let data_struct = {
ae_core: ae_core,
ae_init: ae_loc_tmp,
// ae_core: ae_core,
params: params,
sections: [
{ slug: 'new', title: 'New Test' },
@@ -107,7 +114,7 @@ export function load({ params, url }) { // route
};
let site_domain_results = null;
let loading_results = null;
let access_code_li_json = null;
// First do a site_domain look up to check if it is valid and get the account_id.
@@ -119,11 +126,11 @@ export function load({ params, url }) { // route
// ae_loc.site_domain = data.url.origin;
// console.log(`ae_loc = `, ae_loc);
site_domain_results = handle_load_ae_obj_id__site_domain({fqdn: url.host, try_cache: false});
loading_results = await handle_load_ae_obj_id__site_domain({fqdn: url.host, try_cache: false})
site_domain_results.then(function (site_domain_results) {
.then(function (site_domain_results) {
if (site_domain_results) {
console.log(`site_domain_results = `, site_domain_results);
console.log(`ae_ site_domain_results = `, site_domain_results);
let ae_api_tmp = get(ae_api);
@@ -134,98 +141,192 @@ export function load({ params, url }) { // route
ae_api.set(ae_api_tmp);
console.log(`ae_api = `, get(ae_api));
ae_core = {
'account_id': site_domain_results.account_id_random,
'site_id': site_domain_results.site_id_random,
'site_domain_id': site_domain_results.site_domain_id_random,
'enable': site_domain_results.enable,
'style_href': site_domain_results.style_href,
'google_tracking_id': site_domain_results.google_tracking_id,
}
ae_loc_tmp['account_id'] = site_domain_results.account_id_random;
ae_loc_tmp['site_id'] = site_domain_results.site_id_random;
ae_loc_tmp['site_domain_id'] = site_domain_results.site_domain_id_random;
ae_loc_tmp['enable'] = site_domain_results.enable;
ae_loc_tmp['style_href'] = site_domain_results.style_href;
ae_loc_tmp['google_tracking_id'] = site_domain_results.google_tracking_id;
let ae_loc_tmp = get(ae_loc);
ae_loc_tmp.account_id = site_domain_results.account_id_random;
ae_loc.set(ae_loc_tmp);
console.log(`ae_loc = `, get(ae_loc));
// Get updated the data just in case.
// ae_loc_tmp = get(ae_loc);
// ae_loc_tmp.account_id = site_domain_results.account_id_random;
// ae_loc_tmp.core = ae_core;
// ae_loc.set(ae_loc_tmp);
// console.log(`ae_loc = `, get(ae_loc));
}
return site_domain_results;
return true;
})
.then(function (site_domain_results) {
access_code_li_json = handle_get_data_store_obj_w_code({code: 'hub__page__access_code_li_json', data_type: 'json'});
access_code_li_json.then(function (access_code_li_json_results) {
.then(async function (results) {
ds_code = 'hub__page__access_code_li_json';
await handle_get_data_store_obj_w_code({code: ds_code, data_type: 'json'})
.then(function (access_code_li_json_results) {
if (access_code_li_json_results) {
console.log(`access_code_li_json_results = `, access_code_li_json_results);
console.log(`ae_ access_code_li_json_results = `, access_code_li_json_results);
ae_core = {
...ae_core,
// ae_loc_tmp = get(ae_loc);
ae_loc_tmp = {
...ae_loc_tmp,
'access_code_li': access_code_li_json_results,
}
let ae_loc_tmp = get(ae_loc);
let code = 'hub__page__access_code_li_json';
// ae_loc_tmp = get(ae_loc);
// let code = 'hub__page__access_code_li_json';
ae_loc_tmp.hub.ds[code] = access_code_li_json_results;
ae_loc.set(ae_loc_tmp);
console.log(`ae_loc = `, get(ae_loc));
ds_code_li[ds_code] = access_code_li_json_results;
// ae_loc.set(ae_loc_tmp);
// console.log(`ae_loc = `, get(ae_loc));
}
}
);
return site_domain_results;
return true;
})
.then(function (site_domain_results) {
let ds_hub_site_header = handle_get_data_store_obj_w_code({code: 'hub_site_header'});
let ae_loc_tmp = get(ae_loc);
let code = '';
.then(async function (results) {
// We are intentionally loading these in series, not parallel to limit the number of simultaneous requests.
// let ae_loc_tmp = get(ae_loc);
// Loading the header and footer in series, not parallel.
ds_code = 'hub__site__appshell_header';
await handle_get_data_store_obj_w_code({code: ds_code})
.then(function (ds_hub_site_header_results) {
ds_hub_site_header.then(function (ds_hub_site_header_results) {
if (ds_hub_site_header_results) {
console.log(`ds_hub_site_header_results = `, ds_hub_site_header_results);
console.log(`ae_ ds_hub_site_header_results = `, ds_hub_site_header_results);
// let ae_loc_tmp = get(ae_loc);
ae_core = {
...ae_core,
'site_header': ds_hub_site_header_results,
}
ds_code_li[ds_code] = ds_hub_site_header_results;
code = 'hub_site_header';
ae_loc_tmp.hub.ds[code] = ds_hub_site_header_results;
ae_loc.set(ae_loc_tmp);
console.log(`ae_loc = `, get(ae_loc));
// ae_loc.set(ae_loc_tmp);
// console.log(`ae_loc = `, get(ae_loc));
}
});
let ds_hub_site_footer = handle_get_data_store_obj_w_code({code: 'hub_site_footer'});
})
ds_hub_site_footer.then(function (ds_hub_site_footer_results) {
if (ds_hub_site_footer_results) {
console.log(`ds_hub_site_footer_results = `, ds_hub_site_footer_results);
.then(async function () {
ae_core = {
...ae_core,
'site_footer': ds_hub_site_footer_results,
ds_code = 'hub__site__appshell_footer';
await handle_get_data_store_obj_w_code({code: ds_code})
.then(function (ds_hub_site_footer_results) {
if (ds_hub_site_footer_results) {
console.log(`ae_ hub__site__appshell_footer = `, ds_hub_site_footer_results);
// let ae_loc_tmp = get(ae_loc);
ds_code_li[ds_code] = ds_hub_site_footer_results;
// ae_loc.set(ae_loc_tmp);
// console.log(`ae_loc = `, get(ae_loc));
}
});
code = 'hub_site_footer';
ae_loc_tmp.hub.ds[code] = ds_hub_site_footer_results;
})
.then(async function () {
ds_code = 'hub__site__root_page_content';
await handle_get_data_store_obj_w_code({code: ds_code})
.then(function (ds_code_results) {
if (ds_code_results) {
console.log(`ae_ hub__site__root_page_content = `, ds_code_results);
// let ae_loc_tmp = get(ae_loc);
ds_code_li[ds_code] = ds_code_results;
// ae_loc.set(ae_loc_tmp);
// console.log(`ae_loc = `, get(ae_loc));
}
});
})
.then(async function () {
// Loading the header and footer in series, not parallel.
ds_code = 'hub__page__appshell_header_lead';
await handle_get_data_store_obj_w_code({code: ds_code})
.then(function (ds_code_results) {
if (ds_code_results) {
console.log(`ae_ hub__page__appshell_header_lead = `, ds_code_results);
// let ae_loc_tmp = get(ae_loc);
ds_code_li[ds_code] = ds_code_results;
// ae_loc.set(ae_loc_tmp);
// console.log(`ae_loc = `, get(ae_loc));
}
});
})
.then(async function () {
ds_code = 'hub__page__appshell_header_trail';
await handle_get_data_store_obj_w_code({code: ds_code})
.then(function (ds_code_results) {
if (ds_code_results) {
console.log(`hub__page__appshell_header_trail = `, ds_code_results);
// let ae_loc_tmp = get(ae_loc);
ds_code_li[ds_code] = ds_code_results;
// ae_loc.set(ae_loc_tmp);
// console.log(`ae_loc = `, get(ae_loc));
}
});
ae_loc.set(ae_loc_tmp);
console.log(`ae_loc = `, get(ae_loc));
}
});
})
.finally(function () {
let iframe = url.searchParams.get('iframe');
console.log(`iframe = `, iframe);
if (iframe == 'true') {
data_struct['iframe'] = iframe;
ae_loc_tmp.iframe = iframe;
} else if (iframe == 'false') {
data_struct['iframe'] = false;
ae_loc_tmp.iframe = false;
}
console.log(`ae_ ds_code_li = `, ds_code_li);
ae_loc_tmp = {
...ae_loc_tmp,
'ds': ds_code_li,
}
console.log(`ae_loc_tmp = `, ae_loc_tmp);
data_struct['ae_init'] = ae_loc_tmp;
ae_loc.set(ae_loc_tmp);
console.log(`ae_loc = `, get(ae_loc));
console.log(`root layout.ts finally load...`);
data_struct['ae_core'] = ae_core;
return true;
}
);
// let ae_loc_tmp = get(ae_loc);
// let iframe = url.searchParams.get('iframe');
// console.log(`iframe = `, iframe);
// if (iframe == 'true') {
// data_struct['iframe'] = iframe;
// ae_loc_tmp.iframe = iframe;
// } else if (iframe == 'false') {
// data_struct['iframe'] = false;
// ae_loc_tmp.iframe = false;
// }
// ae_loc.set(ae_loc_tmp);
// if (site_domain_results) {
// console.log(`site_domain_results = `, site_domain_results);
@@ -257,11 +358,11 @@ export function load({ params, url }) { // route
// }
// }
// data_struct['ae_init'] = loading_results;
return data_struct;
}
console.log(`ae_root layout.ts load is finally finished`);
return data_struct;
}