feat: Migrate ESLint to flat config and resolve initial linting errors
Migrated the ESLint configuration to the new flat config format () and addressed several initial linting errors. Key changes include: - Updated ESLint configuration to treat as warnings instead of errors. - Fixed errors in by declaring and . - Corrected error in by using instead of an out-of-scope . - Resolved error in by replacing the undefined directive with the component. - Addressed errors in by replacing with and with . - Fixed errors in by importing necessary modules (, , ) and adding missing props (, , , , ).
This commit is contained in:
@@ -9,512 +9,510 @@ import type { key_val } from '$lib/stores/ae_stores';
|
||||
// LLM = Large Language Model (AI)
|
||||
// Updated 2025-03-15
|
||||
|
||||
|
||||
export interface Journal {
|
||||
id: string; // actually "id_random"
|
||||
journal_id: string;
|
||||
id: string; // actually "id_random"
|
||||
journal_id: string;
|
||||
|
||||
// Essentially this is a change log of journals
|
||||
snapshot_id?: string; // This is the original journal ID. If deleted, then delete all children journals.
|
||||
previous_id?: null|string; // This is the old or parent journal ID
|
||||
next_id?: null|string; // This is the new or child journal ID
|
||||
// Essentially this is a change log of journals
|
||||
snapshot_id?: string; // This is the original journal ID. If deleted, then delete all children journals.
|
||||
previous_id?: null | string; // This is the old or parent journal ID
|
||||
next_id?: null | string; // This is the new or child journal ID
|
||||
|
||||
external_id?: null|string;
|
||||
import_id?: null|string;
|
||||
code?: null|string;
|
||||
external_id?: null | string;
|
||||
import_id?: null | string;
|
||||
code?: null | string;
|
||||
|
||||
for_type?: null|string;
|
||||
for_id?: null|string;
|
||||
for_type?: null | string;
|
||||
for_id?: null | string;
|
||||
|
||||
// template?: null|boolean; // Is this a template journal? If true, it can be used to create new journals.
|
||||
// template?: null|boolean; // Is this a template journal? If true, it can be used to create new journals.
|
||||
|
||||
type_code?: null|string;
|
||||
type_code?: null | string;
|
||||
|
||||
account_id?: null|string; // Owner account of the journal
|
||||
person_id?: null|string; // Owner person of the journal
|
||||
// event_id?: null|string; // Assign to an event???
|
||||
// location_id?: null|string; // Assign to a location???
|
||||
account_id?: null | string; // Owner account of the journal
|
||||
person_id?: null | string; // Owner person of the journal
|
||||
// event_id?: null|string; // Assign to an event???
|
||||
// location_id?: null|string; // Assign to a location???
|
||||
|
||||
name: string; // or the title
|
||||
short_name?: null|string; // Short name for the journal, if any. Used for display purposes.
|
||||
summary?: null|string; // LLM (AI) generated summary...???
|
||||
outline?: null|string; // LLM (AI) generated outline...???
|
||||
name: string; // or the title
|
||||
short_name?: null | string; // Short name for the journal, if any. Used for display purposes.
|
||||
summary?: null | string; // LLM (AI) generated summary...???
|
||||
outline?: null | string; // LLM (AI) generated outline...???
|
||||
|
||||
description?: null|string;
|
||||
description_md_html?: null|string; // Markdown converted to HTML based on description. Uses marked or similar library for conversion.
|
||||
description_md_html_alt?: null|string; // Markdown converted to HTML based on description. Uses marked or similar library for conversion.
|
||||
description_html?: null|string;
|
||||
description_json?: null|string;
|
||||
description?: null | string;
|
||||
description_md_html?: null | string; // Markdown converted to HTML based on description. Uses marked or similar library for conversion.
|
||||
description_md_html_alt?: null | string; // Markdown converted to HTML based on description. Uses marked or similar library for conversion.
|
||||
description_html?: null | string;
|
||||
description_json?: null | string;
|
||||
|
||||
start_datetime?: null|Date;
|
||||
end_datetime?: null|Date;
|
||||
timezone?: null|string;
|
||||
start_datetime?: null | Date;
|
||||
end_datetime?: null | Date;
|
||||
timezone?: null | string;
|
||||
|
||||
alert?: null|boolean; // LLM (AI) generated summary...???
|
||||
alert_msg?: null|string; // LLM (AI) generated summary...???
|
||||
alert?: null | boolean; // LLM (AI) generated summary...???
|
||||
alert_msg?: null | string; // LLM (AI) generated summary...???
|
||||
|
||||
sort_by?: null|string; // This is the sort by field
|
||||
sort_by_desc?: null|string; // This is the sort by field description
|
||||
sort_by?: null | string; // This is the sort by field
|
||||
sort_by_desc?: null | string; // This is the sort by field description
|
||||
|
||||
cfg_json?: null|key_val; // This is the configuration JSON for the journal
|
||||
cfg_json?: null | key_val; // This is the configuration JSON for the journal
|
||||
|
||||
data_json?: null|key_val; // We always need to store something extra...
|
||||
data_json?: null | key_val; // We always need to store something extra...
|
||||
|
||||
ux_mode?: null|string; // 'mobile' or 'desktop'
|
||||
ux_mode?: null | string; // 'mobile' or 'desktop'
|
||||
|
||||
// This only allows for basic access to the data.
|
||||
passcode_read?: null|string; // For LLM (AI) generated summary...???
|
||||
passcode_read_expire?: null|Date;
|
||||
passcode_write?: null|string;
|
||||
passcode_write_expire?: null|Date
|
||||
// This only allows for basic access to the data.
|
||||
passcode_read?: null | string; // For LLM (AI) generated summary...???
|
||||
passcode_read_expire?: null | Date;
|
||||
passcode_write?: null | string;
|
||||
passcode_write_expire?: null | Date;
|
||||
|
||||
passcode?: null|string; // For Journal Entry encryption password
|
||||
passcode_timeout?: null|number; // Timeout in seconds
|
||||
passcode?: null | string; // For Journal Entry encryption password
|
||||
passcode_timeout?: null | number; // Timeout in seconds
|
||||
|
||||
private_passcode?: null|string; // Combine with the Journal passcode for Journal Entry encryption password
|
||||
private_passcode?: null | string; // Combine with the Journal passcode for Journal Entry encryption password
|
||||
|
||||
auth_key?: null|string; // For Journal authorization without sign in
|
||||
auth_key?: null | string; // For Journal authorization without sign in
|
||||
|
||||
enable: null|boolean;
|
||||
hide?: null|boolean;
|
||||
archive?: null|boolean; // Archive the journal
|
||||
archive_on?: null|Date;
|
||||
priority?: null|boolean
|
||||
sort?: null|number;
|
||||
group?: null|string;
|
||||
notes?: null|string;
|
||||
created_on: Date;
|
||||
updated_on?: null|Date;
|
||||
enable: null | boolean;
|
||||
hide?: null | boolean;
|
||||
archive?: null | boolean; // Archive the journal
|
||||
archive_on?: null | Date;
|
||||
priority?: null | boolean;
|
||||
sort?: null | number;
|
||||
group?: null | string;
|
||||
notes?: null | string;
|
||||
created_on: Date;
|
||||
updated_on?: null | Date;
|
||||
|
||||
// Generated fields for sorting locally only
|
||||
tmp_sort_1?: null|string;
|
||||
tmp_sort_2?: null|string;
|
||||
tmp_sort_3?: null|string;
|
||||
// Generated fields for sorting locally only
|
||||
tmp_sort_1?: null | string;
|
||||
tmp_sort_2?: null | string;
|
||||
tmp_sort_3?: null | string;
|
||||
|
||||
combined_passcode?: null|string; // For Journal Entry encryption password
|
||||
combined_passcode?: null | string; // For Journal Entry encryption password
|
||||
|
||||
// Additional fields for convenience (database views)
|
||||
file_count?: null|number; // Only files directly under a journal
|
||||
journal_file_id_li_json?: null|string;
|
||||
// Additional fields for convenience (database views)
|
||||
file_count?: null | number; // Only files directly under a journal
|
||||
journal_file_id_li_json?: null | string;
|
||||
|
||||
// One person
|
||||
person__given_name?: null|string;
|
||||
person__family_name?: null|string;
|
||||
person__full_name?: null|string;
|
||||
person__primary_email?: null|string;
|
||||
person__passcode?: null|string;
|
||||
// One person
|
||||
person__given_name?: null | string;
|
||||
person__family_name?: null | string;
|
||||
person__full_name?: null | string;
|
||||
person__primary_email?: null | string;
|
||||
person__passcode?: null | string;
|
||||
|
||||
// JSON formatted key value pairs for multiple people: {id: name, email, etc.}
|
||||
person__kv_json?: null|string;
|
||||
// JSON formatted key value pairs for multiple people: {id: name, email, etc.}
|
||||
person__kv_json?: null | string;
|
||||
|
||||
journal_name?: null|string;
|
||||
journal_name?: null | string;
|
||||
|
||||
journal_location_code?: null|string;
|
||||
journal_location_name?: null|string;
|
||||
journal_location_code?: null | string;
|
||||
journal_location_name?: null | string;
|
||||
|
||||
journal_entry_count?: null|number;
|
||||
journal_entry_count?: null | number;
|
||||
|
||||
// A key value list of the entries
|
||||
journal_entry_kv?: null|key_val;
|
||||
journal_entry_li?: null|[];
|
||||
// A key value list of the files
|
||||
journal_file_kv?: null|key_val;
|
||||
journal_file_li?: null|[];
|
||||
// A key value list of the entries
|
||||
journal_entry_kv?: null | key_val;
|
||||
journal_entry_li?: null | [];
|
||||
// A key value list of the files
|
||||
journal_file_kv?: null | key_val;
|
||||
journal_file_li?: null | [];
|
||||
|
||||
// journal_collection_id?: null|string; // For a collection of journals?
|
||||
// journal_collection_id?: null|string; // For a collection of journals?
|
||||
|
||||
// Future standard fields!!!
|
||||
obj_id?: null|string;
|
||||
obj_ext_uid?: null|string; // Probably not needed for journals
|
||||
obj_ext_id?: null|string; // Probably not needed for journals
|
||||
obj_import_id?: null|string; // Probably not needed for journals
|
||||
obj_code?: null|string;
|
||||
obj_account_id?: null|string;
|
||||
obj_passcode?: null|string;
|
||||
obj_type?: null|string; // Should always be 'journal' in this case
|
||||
obj_type_ver_id?: null|string; // The ID from the table for the object type
|
||||
obj_name?: null|string;
|
||||
obj_summary?: null|string; // LLM (AI) generated summary...???
|
||||
obj_outline?: null|string; // LLM (AI) generated outline...???
|
||||
obj_description?: null|string; // Probably not needed for journals
|
||||
obj_enable?: null|boolean;
|
||||
obj_enable_on?: null|Date;
|
||||
obj_archive_on?: null|Date;
|
||||
obj_hide?: null|boolean;
|
||||
obj_priority?: null|number;
|
||||
obj_sort?: null|number;
|
||||
obj_group?: null|string;
|
||||
obj_cfg_json?: null|string;
|
||||
obj_notes?: null|string;
|
||||
obj_created_on?: Date;
|
||||
obj_updated_on?: null|Date;
|
||||
// Future standard fields!!!
|
||||
obj_id?: null | string;
|
||||
obj_ext_uid?: null | string; // Probably not needed for journals
|
||||
obj_ext_id?: null | string; // Probably not needed for journals
|
||||
obj_import_id?: null | string; // Probably not needed for journals
|
||||
obj_code?: null | string;
|
||||
obj_account_id?: null | string;
|
||||
obj_passcode?: null | string;
|
||||
obj_type?: null | string; // Should always be 'journal' in this case
|
||||
obj_type_ver_id?: null | string; // The ID from the table for the object type
|
||||
obj_name?: null | string;
|
||||
obj_summary?: null | string; // LLM (AI) generated summary...???
|
||||
obj_outline?: null | string; // LLM (AI) generated outline...???
|
||||
obj_description?: null | string; // Probably not needed for journals
|
||||
obj_enable?: null | boolean;
|
||||
obj_enable_on?: null | Date;
|
||||
obj_archive_on?: null | Date;
|
||||
obj_hide?: null | boolean;
|
||||
obj_priority?: null | number;
|
||||
obj_sort?: null | number;
|
||||
obj_group?: null | string;
|
||||
obj_cfg_json?: null | string;
|
||||
obj_notes?: null | string;
|
||||
obj_created_on?: Date;
|
||||
obj_updated_on?: null | Date;
|
||||
}
|
||||
|
||||
export const journal_field_li = [
|
||||
'id',
|
||||
'journal_id',
|
||||
'snapshot_id',
|
||||
'previous_id',
|
||||
'next_id',
|
||||
'external_id',
|
||||
'import_id',
|
||||
'code',
|
||||
'for_type',
|
||||
'for_id',
|
||||
'type_code',
|
||||
'account_id',
|
||||
'person_id',
|
||||
'name',
|
||||
'short_name',
|
||||
'summary',
|
||||
'outline',
|
||||
'description',
|
||||
'description_md_html',
|
||||
'description_md_html_alt',
|
||||
'description_html',
|
||||
'description_json',
|
||||
'start_datetime',
|
||||
'end_datetime',
|
||||
'timezone',
|
||||
'alert',
|
||||
'alert_msg',
|
||||
'sort_by',
|
||||
'sort_by_desc',
|
||||
'cfg_json',
|
||||
'data_json',
|
||||
'ux_mode',
|
||||
'passcode_read',
|
||||
'passcode_read_expire',
|
||||
'passcode_write',
|
||||
'passcode_write_expire',
|
||||
'passcode_timeout',
|
||||
'private_passcode',
|
||||
'auth_key',
|
||||
'enable',
|
||||
'hide',
|
||||
'archive', // Archive the journal
|
||||
'archive_on', // Archive date
|
||||
'priority', // Priority flag
|
||||
'sort', // Sort order
|
||||
'group', // Group name
|
||||
'notes', // Notes about the journal
|
||||
'created_on', // Creation date
|
||||
'updated_on', // Last updated date
|
||||
'id',
|
||||
'journal_id',
|
||||
'snapshot_id',
|
||||
'previous_id',
|
||||
'next_id',
|
||||
'external_id',
|
||||
'import_id',
|
||||
'code',
|
||||
'for_type',
|
||||
'for_id',
|
||||
'type_code',
|
||||
'account_id',
|
||||
'person_id',
|
||||
'name',
|
||||
'short_name',
|
||||
'summary',
|
||||
'outline',
|
||||
'description',
|
||||
'description_md_html',
|
||||
'description_md_html_alt',
|
||||
'description_html',
|
||||
'description_json',
|
||||
'start_datetime',
|
||||
'end_datetime',
|
||||
'timezone',
|
||||
'alert',
|
||||
'alert_msg',
|
||||
'sort_by',
|
||||
'sort_by_desc',
|
||||
'cfg_json',
|
||||
'data_json',
|
||||
'ux_mode',
|
||||
'passcode_read',
|
||||
'passcode_read_expire',
|
||||
'passcode_write',
|
||||
'passcode_write_expire',
|
||||
'passcode_timeout',
|
||||
'private_passcode',
|
||||
'auth_key',
|
||||
'enable',
|
||||
'hide',
|
||||
'archive', // Archive the journal
|
||||
'archive_on', // Archive date
|
||||
'priority', // Priority flag
|
||||
'sort', // Sort order
|
||||
'group', // Group name
|
||||
'notes', // Notes about the journal
|
||||
'created_on', // Creation date
|
||||
'updated_on', // Last updated date
|
||||
|
||||
'tmp_sort_1', // Temporary sort field 1
|
||||
'tmp_sort_2', // Temporary sort field 2
|
||||
'tmp_sort_3', // Temporary sort field 3
|
||||
'tmp_sort_1', // Temporary sort field 1
|
||||
'tmp_sort_2', // Temporary sort field 2
|
||||
'tmp_sort_3', // Temporary sort field 3
|
||||
|
||||
'combined_passcode', // For Journal Entry encryption password
|
||||
'file_count', // Only files directly under a journal
|
||||
'journal_file_id_li_json', // JSON string of file IDs
|
||||
'person__given_name', // Person's given name
|
||||
'person__family_name', // Person's family name
|
||||
'person__full_name', // Person's full name
|
||||
'person__primary_email', // Person's primary email
|
||||
'person__passcode', // Person's passcode
|
||||
'person__kv_json', // JSON formatted key value pairs for multiple people
|
||||
'journal_name', // Journal name
|
||||
'journal_location_code', // Journal location code
|
||||
'journal_location_name', // Journal location name
|
||||
'journal_entry_count', // Count of journal entries
|
||||
'journal_entry_kv', // Key value list of the entries
|
||||
'journal_entry_li', // List of journal entries
|
||||
'journal_file_kv', // Key value list of the files
|
||||
'journal_file_li', // List of journal files
|
||||
'combined_passcode', // For Journal Entry encryption password
|
||||
'file_count', // Only files directly under a journal
|
||||
'journal_file_id_li_json', // JSON string of file IDs
|
||||
'person__given_name', // Person's given name
|
||||
'person__family_name', // Person's family name
|
||||
'person__full_name', // Person's full name
|
||||
'person__primary_email', // Person's primary email
|
||||
'person__passcode', // Person's passcode
|
||||
'person__kv_json', // JSON formatted key value pairs for multiple people
|
||||
'journal_name', // Journal name
|
||||
'journal_location_code', // Journal location code
|
||||
'journal_location_name', // Journal location name
|
||||
'journal_entry_count', // Count of journal entries
|
||||
'journal_entry_kv', // Key value list of the entries
|
||||
'journal_entry_li', // List of journal entries
|
||||
'journal_file_kv', // Key value list of the files
|
||||
'journal_file_li', // List of journal files
|
||||
|
||||
'obj_id', // Object ID
|
||||
'obj_ext_uid', // External UID
|
||||
'obj_ext_id', // External ID
|
||||
'obj_import_id', // Import ID
|
||||
'obj_code', // Object code
|
||||
'obj_account_id', // Object account ID
|
||||
'obj_passcode', // Object passcode
|
||||
'obj_type', // Object type
|
||||
'obj_type_ver_id', // Object type version ID
|
||||
'obj_name', // Object name
|
||||
'obj_summary', // Object summary
|
||||
'obj_outline', // Object outline
|
||||
'obj_description', // Object description
|
||||
'obj_enable', // Object enable flag
|
||||
'obj_enable_on', // Object enable date
|
||||
'obj_archive_on', // Object archive date
|
||||
'obj_hide', // Object hide flag
|
||||
'obj_priority', // Object priority
|
||||
'obj_sort', // Object sort order
|
||||
'obj_group', // Object group name
|
||||
'obj_cfg_json', // Object configuration JSON
|
||||
'obj_notes', // Object notes
|
||||
'obj_created_on', // Object creation date
|
||||
'obj_updated_on' // Object last updated date
|
||||
'obj_id', // Object ID
|
||||
'obj_ext_uid', // External UID
|
||||
'obj_ext_id', // External ID
|
||||
'obj_import_id', // Import ID
|
||||
'obj_code', // Object code
|
||||
'obj_account_id', // Object account ID
|
||||
'obj_passcode', // Object passcode
|
||||
'obj_type', // Object type
|
||||
'obj_type_ver_id', // Object type version ID
|
||||
'obj_name', // Object name
|
||||
'obj_summary', // Object summary
|
||||
'obj_outline', // Object outline
|
||||
'obj_description', // Object description
|
||||
'obj_enable', // Object enable flag
|
||||
'obj_enable_on', // Object enable date
|
||||
'obj_archive_on', // Object archive date
|
||||
'obj_hide', // Object hide flag
|
||||
'obj_priority', // Object priority
|
||||
'obj_sort', // Object sort order
|
||||
'obj_group', // Object group name
|
||||
'obj_cfg_json', // Object configuration JSON
|
||||
'obj_notes', // Object notes
|
||||
'obj_created_on', // Object creation date
|
||||
'obj_updated_on' // Object last updated date
|
||||
];
|
||||
|
||||
// Updated 2025-04-02
|
||||
export interface Journal_Entry {
|
||||
id: string; // actually "id_random"
|
||||
journal_entry_id: string;
|
||||
id: string; // actually "id_random"
|
||||
journal_entry_id: string;
|
||||
|
||||
journal_id: string; // This is the parent journal ID. If deleted, then delete all children journal entries.
|
||||
journal_id: string; // This is the parent journal ID. If deleted, then delete all children journal entries.
|
||||
|
||||
// Essentially this is a change log of journal entries
|
||||
snapshot_id?: string; // This is the original journal ID. If deleted, then delete all children journal entries.
|
||||
previous_id?: null|string; // This is the old or parent journal ID
|
||||
next_id?: null|string; // This is the new or child journal ID
|
||||
// Essentially this is a change log of journal entries
|
||||
snapshot_id?: string; // This is the original journal ID. If deleted, then delete all children journal entries.
|
||||
previous_id?: null | string; // This is the old or parent journal ID
|
||||
next_id?: null | string; // This is the new or child journal ID
|
||||
|
||||
external_id?: null|string;
|
||||
import_id?: null|string;
|
||||
code?: null|string;
|
||||
external_id?: null | string;
|
||||
import_id?: null | string;
|
||||
code?: null | string;
|
||||
|
||||
for_type?: null|string;
|
||||
for_id?: null|string;
|
||||
for_type?: null | string;
|
||||
for_id?: null | string;
|
||||
|
||||
template?: null|boolean; // Is this a template journal entry? If true, it can be used to create new journal entries.
|
||||
template?: null | boolean; // Is this a template journal entry? If true, it can be used to create new journal entries.
|
||||
|
||||
activity_code?: null|string;
|
||||
category_code?: null|string;
|
||||
topic_code?: null|string;
|
||||
type_code?: null|string;
|
||||
tags?: null|string; // Comma separated tags
|
||||
activity_code?: null | string;
|
||||
category_code?: null | string;
|
||||
topic_code?: null | string;
|
||||
type_code?: null | string;
|
||||
tags?: null | string; // Comma separated tags
|
||||
|
||||
journal_entry_type?: null|string; // This is the type of journal entry
|
||||
journal_entry_type?: null | string; // This is the type of journal entry
|
||||
|
||||
account_id?: null|string; // Owner account of the journal
|
||||
person_id?: null|string; // Owner person of the journal
|
||||
// event_id?: null|string; // Assign to an event???
|
||||
// location_id?: null|string; // Assign to a location???
|
||||
account_id?: null | string; // Owner account of the journal
|
||||
person_id?: null | string; // Owner person of the journal
|
||||
// event_id?: null|string; // Assign to an event???
|
||||
// location_id?: null|string; // Assign to a location???
|
||||
|
||||
public?: null|boolean;
|
||||
private?: null|boolean;
|
||||
personal?: null|boolean;
|
||||
professional?: null|boolean;
|
||||
public?: null | boolean;
|
||||
private?: null | boolean;
|
||||
personal?: null | boolean;
|
||||
professional?: null | boolean;
|
||||
|
||||
name: string; // or the title
|
||||
short_name?: null|string; // Short name for the journal entry, if any. Used for display purposes. Most likely for the templates list.
|
||||
summary?: null|string; // LLM (AI) generated summary...???
|
||||
outline?: null|string; // LLM (AI) generated outline...???
|
||||
// description?: null|string; // This is the description of the journal entry
|
||||
name: string; // or the title
|
||||
short_name?: null | string; // Short name for the journal entry, if any. Used for display purposes. Most likely for the templates list.
|
||||
summary?: null | string; // LLM (AI) generated summary...???
|
||||
outline?: null | string; // LLM (AI) generated outline...???
|
||||
// description?: null|string; // This is the description of the journal entry
|
||||
|
||||
content?: null|string;
|
||||
content_md_html?: null|string; // Markdown converted to HTML based on content. Uses marked or similar library for conversion.
|
||||
content_md_html_alt?: null|string; // Markdown converted to HTML based on content. Uses marked or similar library for conversion.
|
||||
content_html?: null|string;
|
||||
content_json?: null|string;
|
||||
content_encrypted?: null|string; // This is the encrypted content of the journal entry
|
||||
content?: null | string;
|
||||
content_md_html?: null | string; // Markdown converted to HTML based on content. Uses marked or similar library for conversion.
|
||||
content_md_html_alt?: null | string; // Markdown converted to HTML based on content. Uses marked or similar library for conversion.
|
||||
content_html?: null | string;
|
||||
content_json?: null | string;
|
||||
content_encrypted?: null | string; // This is the encrypted content of the journal entry
|
||||
|
||||
history?: null|string; // This is the history of the journal entry; a log
|
||||
history_encrypted?: null|string; // This is the encrypted history of the journal entry
|
||||
history?: null | string; // This is the history of the journal entry; a log
|
||||
history_encrypted?: null | string; // This is the encrypted history of the journal entry
|
||||
|
||||
passcode_hash?: null|string; // This is the passcode hash for the journal entry to look up the passcode
|
||||
passcode_hash?: null | string; // This is the passcode hash for the journal entry to look up the passcode
|
||||
|
||||
start_datetime?: null|Date;
|
||||
end_datetime?: null|Date;
|
||||
timezone?: null|string;
|
||||
seconds?: null|number; // Duration in seconds
|
||||
start_datetime?: null | Date;
|
||||
end_datetime?: null | Date;
|
||||
timezone?: null | string;
|
||||
seconds?: null | number; // Duration in seconds
|
||||
|
||||
location?: null|string; // Location of the journal entry
|
||||
latitude?: null|number; // Latitude of the journal entry
|
||||
longitude?: null|number; // Longitude of the journal entry
|
||||
location?: null | string; // Location of the journal entry
|
||||
latitude?: null | number; // Latitude of the journal entry
|
||||
longitude?: null | number; // Longitude of the journal entry
|
||||
|
||||
billable?: null|boolean; // Is this billable?
|
||||
bill_to?: null|string; // Who to bill for this journal entry
|
||||
bill_rate?: null|number; // Rate to bill for this journal entry
|
||||
billable_minutes?: null|number; // Billable minutes for this journal entry
|
||||
billable?: null | boolean; // Is this billable?
|
||||
bill_to?: null | string; // Who to bill for this journal entry
|
||||
bill_rate?: null | number; // Rate to bill for this journal entry
|
||||
billable_minutes?: null | number; // Billable minutes for this journal entry
|
||||
|
||||
alert?: null|boolean; // LLM (AI) generated summary...???
|
||||
alert_msg?: null|string; // LLM (AI) generated summary...???
|
||||
alert?: null | boolean; // LLM (AI) generated summary...???
|
||||
alert_msg?: null | string; // LLM (AI) generated summary...???
|
||||
|
||||
parent_id?: null|string; // This is the parent journal entry ID. If deleted, then delete all children journal entries.
|
||||
related_entry_id_li?: null|key_val; // List of related journal entry IDs
|
||||
parent_id?: null | string; // This is the parent journal entry ID. If deleted, then delete all children journal entries.
|
||||
related_entry_id_li?: null | key_val; // List of related journal entry IDs
|
||||
|
||||
// cfg_json?: null|key_val; // This is the configuration JSON for the journal entry
|
||||
data_json?: null|key_val; // We always need to store something extra...
|
||||
// cfg_json?: null|key_val; // This is the configuration JSON for the journal entry
|
||||
data_json?: null | key_val; // We always need to store something extra...
|
||||
|
||||
// This only allows for basic access to the content.
|
||||
passcode_read?: null|string; // For LLM (AI) generated summary...???
|
||||
passcode_read_expire?: null|Date;
|
||||
passcode_write?: null|string;
|
||||
passcode_write_expire?: null|Date
|
||||
// This only allows for basic access to the content.
|
||||
passcode_read?: null | string; // For LLM (AI) generated summary...???
|
||||
passcode_read_expire?: null | Date;
|
||||
passcode_write?: null | string;
|
||||
passcode_write_expire?: null | Date;
|
||||
|
||||
enable: null|boolean;
|
||||
hide?: null|boolean;
|
||||
priority?: null|boolean
|
||||
sort?: null|number;
|
||||
group?: null|string;
|
||||
notes?: null|string;
|
||||
created_on: Date;
|
||||
updated_on?: null|Date;
|
||||
enable: null | boolean;
|
||||
hide?: null | boolean;
|
||||
priority?: null | boolean;
|
||||
sort?: null | number;
|
||||
group?: null | string;
|
||||
notes?: null | string;
|
||||
created_on: Date;
|
||||
updated_on?: null | Date;
|
||||
|
||||
// Generated fields for sorting locally only
|
||||
tmp_sort_1?: null|string;
|
||||
tmp_sort_2?: null|string;
|
||||
tmp_sort_3?: null|string;
|
||||
// Generated fields for sorting locally only
|
||||
tmp_sort_1?: null | string;
|
||||
tmp_sort_2?: null | string;
|
||||
tmp_sort_3?: null | string;
|
||||
|
||||
// Additional fields for convenience (database views)
|
||||
file_count?: null|number; // Only files directly under a journal
|
||||
journal_file_id_li_json?: null|string;
|
||||
// Additional fields for convenience (database views)
|
||||
file_count?: null | number; // Only files directly under a journal
|
||||
journal_file_id_li_json?: null | string;
|
||||
|
||||
journal_code?: null|string; // This is the code for the journal entry
|
||||
journal_name?: null|string; // This is the name for the journal entry
|
||||
journal_code?: null | string; // This is the code for the journal entry
|
||||
journal_name?: null | string; // This is the name for the journal entry
|
||||
|
||||
// One person
|
||||
person__given_name?: null|string;
|
||||
person__family_name?: null|string;
|
||||
person__full_name?: null|string;
|
||||
person__primary_email?: null|string;
|
||||
person__passcode?: null|string;
|
||||
// One person
|
||||
person__given_name?: null | string;
|
||||
person__family_name?: null | string;
|
||||
person__full_name?: null | string;
|
||||
person__primary_email?: null | string;
|
||||
person__passcode?: null | string;
|
||||
|
||||
// JSON formatted key value pairs for multiple people: {id: name, email, etc.}
|
||||
person__kv_json?: null|string;
|
||||
// JSON formatted key value pairs for multiple people: {id: name, email, etc.}
|
||||
person__kv_json?: null | string;
|
||||
|
||||
// A key value list of the files
|
||||
journal_file_kv?: null|key_val;
|
||||
journal_file_li?: null|[];
|
||||
// A key value list of the files
|
||||
journal_file_kv?: null | key_val;
|
||||
journal_file_li?: null | [];
|
||||
|
||||
// journal_collection_id?: null|string; // For a collection of journal entries?
|
||||
// journal_collection_id?: null|string; // For a collection of journal entries?
|
||||
|
||||
// Future standard fields!!!
|
||||
obj_id?: null|string;
|
||||
obj_ext_uid?: null|string; // Probably not needed for journal entries
|
||||
obj_ext_id?: null|string; // Probably not needed for journal entries
|
||||
obj_import_id?: null|string; // Probably not needed for journal entries
|
||||
obj_code?: null|string;
|
||||
obj_account_id?: null|string;
|
||||
obj_passcode?: null|string;
|
||||
obj_type?: null|string; // Should always be 'journal' in this case
|
||||
obj_type_ver_id?: null|string; // The ID from the table for the object type
|
||||
obj_name?: null|string;
|
||||
obj_summary?: null|string; // LLM (AI) generated summary...???
|
||||
obj_outline?: null|string; // LLM (AI) generated outline...???
|
||||
obj_description?: null|string; // Probably not needed for journal entries
|
||||
obj_enable?: null|boolean;
|
||||
obj_enable_on?: null|Date;
|
||||
obj_archive_on?: null|Date;
|
||||
obj_hide?: null|boolean;
|
||||
obj_priority?: null|number;
|
||||
obj_sort?: null|number;
|
||||
obj_group?: null|string;
|
||||
obj_cfg_json?: null|string;
|
||||
obj_notes?: null|string;
|
||||
obj_created_on?: Date;
|
||||
obj_updated_on?: null|Date;
|
||||
// Future standard fields!!!
|
||||
obj_id?: null | string;
|
||||
obj_ext_uid?: null | string; // Probably not needed for journal entries
|
||||
obj_ext_id?: null | string; // Probably not needed for journal entries
|
||||
obj_import_id?: null | string; // Probably not needed for journal entries
|
||||
obj_code?: null | string;
|
||||
obj_account_id?: null | string;
|
||||
obj_passcode?: null | string;
|
||||
obj_type?: null | string; // Should always be 'journal' in this case
|
||||
obj_type_ver_id?: null | string; // The ID from the table for the object type
|
||||
obj_name?: null | string;
|
||||
obj_summary?: null | string; // LLM (AI) generated summary...???
|
||||
obj_outline?: null | string; // LLM (AI) generated outline...???
|
||||
obj_description?: null | string; // Probably not needed for journal entries
|
||||
obj_enable?: null | boolean;
|
||||
obj_enable_on?: null | Date;
|
||||
obj_archive_on?: null | Date;
|
||||
obj_hide?: null | boolean;
|
||||
obj_priority?: null | number;
|
||||
obj_sort?: null | number;
|
||||
obj_group?: null | string;
|
||||
obj_cfg_json?: null | string;
|
||||
obj_notes?: null | string;
|
||||
obj_created_on?: Date;
|
||||
obj_updated_on?: null | Date;
|
||||
}
|
||||
|
||||
export const journal_entry_field_li = [
|
||||
'id',
|
||||
'journal_entry_id',
|
||||
'journal_id',
|
||||
'code',
|
||||
'for_type',
|
||||
'for_id',
|
||||
'template',
|
||||
'activity_code',
|
||||
'category_code',
|
||||
'topic_code',
|
||||
'type_code',
|
||||
'tags',
|
||||
'journal_entry_type',
|
||||
'account_id',
|
||||
'person_id',
|
||||
'public',
|
||||
'private',
|
||||
'personal',
|
||||
'professional',
|
||||
'name',
|
||||
'short_name',
|
||||
'summary',
|
||||
'outline',
|
||||
'content',
|
||||
'content_md_html',
|
||||
'content_md_html_alt',
|
||||
'content_html',
|
||||
'content_json',
|
||||
'content_encrypted',
|
||||
'history',
|
||||
'history_encrypted',
|
||||
'passcode_hash',
|
||||
'start_datetime',
|
||||
'end_datetime',
|
||||
'timezone',
|
||||
'seconds',
|
||||
'location',
|
||||
'latitude',
|
||||
'longitude',
|
||||
'billable',
|
||||
'bill_to',
|
||||
'bill_rate',
|
||||
'billable_minutes',
|
||||
'alert',
|
||||
'alert_msg',
|
||||
'parent_id',
|
||||
'related_entry_id_li',
|
||||
'data_json',
|
||||
'passcode_read',
|
||||
'passcode_read_expire',
|
||||
'passcode_write',
|
||||
'passcode_write_expire',
|
||||
'enable',
|
||||
'hide',
|
||||
'priority',
|
||||
'sort',
|
||||
'group',
|
||||
'notes',
|
||||
'created_on',
|
||||
'updated_on',
|
||||
'id',
|
||||
'journal_entry_id',
|
||||
'journal_id',
|
||||
'code',
|
||||
'for_type',
|
||||
'for_id',
|
||||
'template',
|
||||
'activity_code',
|
||||
'category_code',
|
||||
'topic_code',
|
||||
'type_code',
|
||||
'tags',
|
||||
'journal_entry_type',
|
||||
'account_id',
|
||||
'person_id',
|
||||
'public',
|
||||
'private',
|
||||
'personal',
|
||||
'professional',
|
||||
'name',
|
||||
'short_name',
|
||||
'summary',
|
||||
'outline',
|
||||
'content',
|
||||
'content_md_html',
|
||||
'content_md_html_alt',
|
||||
'content_html',
|
||||
'content_json',
|
||||
'content_encrypted',
|
||||
'history',
|
||||
'history_encrypted',
|
||||
'passcode_hash',
|
||||
'start_datetime',
|
||||
'end_datetime',
|
||||
'timezone',
|
||||
'seconds',
|
||||
'location',
|
||||
'latitude',
|
||||
'longitude',
|
||||
'billable',
|
||||
'bill_to',
|
||||
'bill_rate',
|
||||
'billable_minutes',
|
||||
'alert',
|
||||
'alert_msg',
|
||||
'parent_id',
|
||||
'related_entry_id_li',
|
||||
'data_json',
|
||||
'passcode_read',
|
||||
'passcode_read_expire',
|
||||
'passcode_write',
|
||||
'passcode_write_expire',
|
||||
'enable',
|
||||
'hide',
|
||||
'priority',
|
||||
'sort',
|
||||
'group',
|
||||
'notes',
|
||||
'created_on',
|
||||
'updated_on',
|
||||
|
||||
'tmp_sort_1',
|
||||
'tmp_sort_2',
|
||||
'tmp_sort_3',
|
||||
'tmp_sort_1',
|
||||
'tmp_sort_2',
|
||||
'tmp_sort_3',
|
||||
|
||||
'file_count',
|
||||
'journal_file_id_li_json',
|
||||
'journal_code',
|
||||
'journal_name',
|
||||
'person__given_name',
|
||||
'person__family_name',
|
||||
'person__full_name',
|
||||
'person__primary_email',
|
||||
'person__passcode',
|
||||
'person__kv_json',
|
||||
'journal_file_kv',
|
||||
'journal_file_li',
|
||||
'file_count',
|
||||
'journal_file_id_li_json',
|
||||
'journal_code',
|
||||
'journal_name',
|
||||
'person__given_name',
|
||||
'person__family_name',
|
||||
'person__full_name',
|
||||
'person__primary_email',
|
||||
'person__passcode',
|
||||
'person__kv_json',
|
||||
'journal_file_kv',
|
||||
'journal_file_li',
|
||||
|
||||
'obj_id',
|
||||
'obj_ext_uid',
|
||||
'obj_ext_id',
|
||||
'obj_import_id',
|
||||
'obj_code',
|
||||
'obj_account_id',
|
||||
'obj_passcode',
|
||||
'obj_type',
|
||||
'obj_type_ver_id',
|
||||
'obj_name',
|
||||
'obj_summary',
|
||||
'obj_outline',
|
||||
'obj_description',
|
||||
'obj_enable',
|
||||
'obj_enable_on',
|
||||
'obj_archive_on',
|
||||
'obj_hide',
|
||||
'obj_priority',
|
||||
'obj_sort',
|
||||
'obj_group',
|
||||
'obj_cfg_json',
|
||||
'obj_notes',
|
||||
'obj_created_on',
|
||||
'obj_updated_on'
|
||||
'obj_id',
|
||||
'obj_ext_uid',
|
||||
'obj_ext_id',
|
||||
'obj_import_id',
|
||||
'obj_code',
|
||||
'obj_account_id',
|
||||
'obj_passcode',
|
||||
'obj_type',
|
||||
'obj_type_ver_id',
|
||||
'obj_name',
|
||||
'obj_summary',
|
||||
'obj_outline',
|
||||
'obj_description',
|
||||
'obj_enable',
|
||||
'obj_enable_on',
|
||||
'obj_archive_on',
|
||||
'obj_hide',
|
||||
'obj_priority',
|
||||
'obj_sort',
|
||||
'obj_group',
|
||||
'obj_cfg_json',
|
||||
'obj_notes',
|
||||
'obj_created_on',
|
||||
'obj_updated_on'
|
||||
];
|
||||
|
||||
|
||||
// Updated 2024-06-10
|
||||
export class MySubClassedDexie extends Dexie {
|
||||
// We just tell the typing system this is the case
|
||||
journal!: Table<Journal>;
|
||||
journal_entry!: Table<Journal_Entry>;
|
||||
// We just tell the typing system this is the case
|
||||
journal!: Table<Journal>;
|
||||
journal_entry!: Table<Journal_Entry>;
|
||||
|
||||
constructor() {
|
||||
super('ae_journals_db');
|
||||
this.version(4).stores({
|
||||
journal: `
|
||||
constructor() {
|
||||
super('ae_journals_db');
|
||||
this.version(4).stores({
|
||||
journal: `
|
||||
id, journal_id,
|
||||
code,
|
||||
account_id,
|
||||
@@ -525,7 +523,7 @@ export class MySubClassedDexie extends Dexie {
|
||||
timezone,
|
||||
tmp_sort_1, tmp_sort_2, tmp_sort_3,
|
||||
enable, hide, priority, sort, group, created_on, updated_on`,
|
||||
journal_entry: `
|
||||
journal_entry: `
|
||||
id, journal_entry_id,
|
||||
journal_id,
|
||||
code,
|
||||
@@ -535,9 +533,9 @@ export class MySubClassedDexie extends Dexie {
|
||||
start_datetime, end_datetime,
|
||||
timezone,
|
||||
tmp_sort_1, tmp_sort_2, tmp_sort_3,
|
||||
enable, hide, priority, sort, group, created_on, updated_on`,
|
||||
});
|
||||
}
|
||||
enable, hide, priority, sort, group, created_on, updated_on`
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export const db_journals = new MySubClassedDexie();
|
||||
|
||||
Reference in New Issue
Block a user