feat: standardize OrderBy types and fix data model mismatches

- Update ae_types.ts with joined fields for deep layout loading
- Fix OrderBy vs OrderBy[] type mismatch in API v2/v3 and generic CRUD
- Apply 'as const' to order_by_li defaults in core/event libraries
- Resolve type errors in reports_presenters and reports_files Svelte components
This commit is contained in:
Scott Idem
2026-01-15 19:03:26 -05:00
parent 31f18b8723
commit ab1c207c86
20 changed files with 83 additions and 39 deletions

View File

@@ -4,6 +4,7 @@
import { error } from '@sveltejs/kit';
import { lookup_site_domain } from '$lib/ae_core/ae_core__site';
import type { key_val } from '$lib/stores/ae_stores';
import type { ae_SiteDomain } from '$lib/types/ae_types';
import {
PUBLIC_AE_API_PROTOCOL,

View File

@@ -232,15 +232,15 @@
order_by_li = rpt__order_by_li,
log_lvl = 0
}: {
created_on_offset?: string | null;
created_on_offset?: string | number | null;
min_file_size?: number | null;
file_purpose?: string | null;
// ft_search_str?: string,
// lk_search_str?: string,
enabled?: 'enabled' | 'all' | 'not_enabled' | undefined;
hidden?: 'hidden' | 'all' | 'not_hidden' | undefined;
enabled?: 'enabled' | 'all' | 'not_enabled' | string;
hidden?: 'hidden' | 'all' | 'not_hidden' | string;
limit?: number;
order_by_li?: key_val;
order_by_li?: any;
log_lvl?: number;
}) {
log_lvl = 2;
@@ -260,7 +260,7 @@
let created_on_str = null;
if (created_on_offset) {
// Calculate the datetime to pass based on the selected offset.
let offset = created_on_offset ?? 0;
let offset = Number(created_on_offset) ?? 0;
let current_datetime = new Date();
console.log(`Current time:`, current_datetime);
@@ -315,8 +315,8 @@
qry_created_on: created_on_str,
qry_min_file_size: min_file_size,
qry_file_purpose: file_purpose,
enabled: enabled,
hidden: hidden,
enabled: enabled as any,
hidden: hidden as any,
limit: limit,
order_by_li: order_by_li,
// try_cache: try_cache,
@@ -324,6 +324,9 @@
})
.then(function (search_results) {
// Processing the results from the search.
if (!search_results) {
search_results = [];
}
$events_sess.pres_mgmt.status_qry__search = 'processing';
$events_sess.pres_mgmt.status_rpt[rpt__name] = 'processing';
qry__status = 'processing';

View File

@@ -182,8 +182,8 @@
biography = null,
ft_search_str = '',
lk_search_str = '',
enabled = rpt__hidden,
hidden = rpt__enabled,
enabled = rpt__enabled,
hidden = rpt__hidden,
limit = rpt__limit,
order_by_li = rpt__order_by_li,
// params = {
@@ -200,10 +200,10 @@
lk_search_str?: string;
// search_delay?: number, // In milliseconds
// max_tries?: number,
enabled?: 'enabled' | 'all' | 'not_enabled' | undefined;
hidden?: 'hidden' | 'all' | 'not_hidden' | undefined;
enabled?: 'enabled' | 'all' | 'not_enabled' | string;
hidden?: 'hidden' | 'all' | 'not_hidden' | string;
limit?: number;
order_by_li?: key_val; // Order by fields and directions.
order_by_li?: any; // Order by fields and directions.
// params?: key_val,
// try_cache?: boolean,
log_lvl?: number;
@@ -236,8 +236,8 @@
like_presentation_search_qry_str: lk_search_str,
like_presenter_search_qry_str: lk_search_str,
// external_event_id: $events_loc.pres_mgmt.default__external_registration_id,
enabled: enabled,
hidden: hidden,
enabled: enabled as any,
hidden: hidden as any,
limit: limit,
order_by_li: order_by_li,
// try_cache: try_cache,
@@ -245,6 +245,9 @@
})
.then(function (search_results) {
// Processing the results from the search.
if (!search_results) {
search_results = [];
}
$events_sess.pres_mgmt.status_qry__search = 'processing';
$events_sess.pres_mgmt.status_rpt[rpt__name] = 'processing';
qry__status = 'processing';

View File

@@ -4,6 +4,7 @@ console.log(`Events - [event_id] launcher +layout.ts start`);
import { error } from '@sveltejs/kit';
import { browser } from '$app/environment';
import { events_func } from '$lib/ae_events_functions';
import type { ae_Event } from '$lib/types/ae_types';
export async function load({ params, parent, url }) {
// route
@@ -32,7 +33,7 @@ export async function load({ params, parent, url }) {
// console.log(`TEST URL Params`, params);
// console.log(`TEST URL`, url);
const load_event_obj = await events_func.load_ae_obj_id__event({
const load_event_obj: ae_Event | null = await events_func.load_ae_obj_id__event({
api_cfg: ae_acct.api,
event_id: event_id,
// inc_file_li: true,