Replaced the Tiptap-based rich text editor with CodeMirror for basic markdown formatting. - Removed directory. - Removed all and dependencies from . - Renamed to . - Updated to use and removed Tiptap-specific logic. - Updated all Svelte components that were importing the old Tiptap wrapper to import the new CodeMirror wrapper and removed unsupported props (, , , ). - Ran up to date, audited 492 packages in 1s 92 packages are looking for funding run `npm fund` for details 8 low severity vulnerabilities To address issues that do not require attention, run: npm audit fix To address all issues (including breaking changes), run: npm audit fix --force Run `npm audit` for details. and > osit-aether-app-svelte@3.9.6 format > prettier --write . .eslintrc.cjs 18ms (unchanged) .prettierrc 4ms (unchanged) .vscode/settings.json 2ms (unchanged) ae_app_svelte_tailwind_skeleton.code-workspace 1ms (unchanged) ARCHITECTURE.md 22ms (unchanged) components.json 1ms (unchanged) COMPONENTS.md 9ms (unchanged) DATA_STRUCTURES.md 7ms (unchanged) eslint.config.js 4ms (unchanged) GEMINI.md 5ms (unchanged) jsconfig.json 1ms (unchanged) NAMING_CONVENTIONS.md 8ms (unchanged) OLD_README_guidelines_ui_ux.md 6ms (unchanged) OLD_README_guidelines_v1.md 8ms (unchanged) OLD_README_guidelines_v2.md 26ms (unchanged) package.json 1ms (unchanged) playwright.config.ts 3ms (unchanged) README.md 6ms (unchanged) src/ae-c-idaa-light.css 14ms (unchanged) src/ae-c-lci.css 9ms (unchanged) src/ae-osit-default.css 9ms (unchanged) src/aeclci_v1.css 7ms (unchanged) src/app.css 16ms (unchanged) src/app.d.ts 1ms (unchanged) src/app.html 11ms (unchanged) src/index.test.ts 1ms (unchanged) src/lib/ae_api/api_delete_object.ts 10ms (unchanged) src/lib/ae_api/api_get__crud_obj_id.ts 9ms (unchanged) src/lib/ae_api/api_get__crud_obj_li_v1.ts 7ms (unchanged) src/lib/ae_api/api_get__crud_obj_li_v2.ts 6ms (unchanged) src/lib/ae_api/api_get_object_v1.ts 19ms (unchanged) src/lib/ae_api/api_get_object.ts 9ms (unchanged) src/lib/ae_api/api_patch_object.ts 5ms (unchanged) src/lib/ae_api/api_post_object.ts 10ms (unchanged) src/lib/ae_archives/ae_archives__archive_content.ts 12ms (unchanged) src/lib/ae_archives/ae_archives__archive.ts 14ms (unchanged) src/lib/ae_archives/ae_archives_functions.ts 1ms (unchanged) src/lib/ae_archives/db_archives.ts 4ms (unchanged) src/lib/ae_archives/README.md 2ms (unchanged) src/lib/ae_core/ae_comp__hosted_files_clip_video_li.svelte 33ms (unchanged) src/lib/ae_core/ae_comp__hosted_files_clip_video_v1.svelte 25ms (unchanged) src/lib/ae_core/ae_comp__hosted_files_clip_video.svelte 21ms (unchanged) src/lib/ae_core/ae_comp__hosted_files_download_button.svelte 10ms (unchanged) src/lib/ae_core/ae_comp__hosted_files_upload.svelte 13ms (unchanged) src/lib/ae_core/ae_core_functions.ts 10ms (unchanged) src/lib/ae_core/core__account.ts 1ms (unchanged) src/lib/ae_core/core__activity_log.ts 7ms (unchanged) src/lib/ae_core/core__api_helpers.ts 2ms (unchanged) src/lib/ae_core/core__check_hosted_file_obj_w_hash.ts 1ms (unchanged) src/lib/ae_core/core__countries.ts 2ms (unchanged) src/lib/ae_core/core__country_subdivisions.ts 2ms (unchanged) src/lib/ae_core/core__crud_generic.ts 6ms (unchanged) src/lib/ae_core/core__data_store.ts 2ms (unchanged) src/lib/ae_core/core__hosted_files.ts 6ms (unchanged) src/lib/ae_core/core__idb_dexie.ts 4ms (unchanged) src/lib/ae_core/core__person.ts 16ms (unchanged) src/lib/ae_core/core__qr_code.ts 6ms (unchanged) src/lib/ae_core/core__site_domain.ts 2ms (unchanged) src/lib/ae_core/core__site.ts 1ms (unchanged) src/lib/ae_core/core__time_zones.ts 2ms (unchanged) src/lib/ae_core/core__user.ts 6ms (unchanged) src/lib/ae_core/db_core.ts 3ms (unchanged) src/lib/ae_events_functions.ts 2ms (unchanged) src/lib/ae_events/ae_events__event_badge_template.ts 9ms (unchanged) src/lib/ae_events/ae_events__event_badge.ts 13ms (unchanged) src/lib/ae_events/ae_events__event_device.ts 16ms (unchanged) src/lib/ae_events/ae_events__event_file.ts 14ms (unchanged) src/lib/ae_events/ae_events__event_location.ts 12ms (unchanged) src/lib/ae_events/ae_events__event_presentation.ts 10ms (unchanged) src/lib/ae_events/ae_events__event_presenter.ts 11ms (unchanged) src/lib/ae_events/ae_events__event_session.ts 18ms (unchanged) src/lib/ae_events/ae_events__event.ts 17ms (unchanged) src/lib/ae_events/ae_events__exhibit.ts 10ms (unchanged) src/lib/ae_events/db_events.ts 10ms (unchanged) src/lib/ae_journals/ae_journals__journal_entry.ts 13ms (unchanged) src/lib/ae_journals/ae_journals__journal.ts 15ms (unchanged) src/lib/ae_journals/ae_journals_functions.ts 1ms (unchanged) src/lib/ae_journals/ae_journals_stores.ts 3ms (unchanged) src/lib/ae_journals/db_journals.ts 6ms (unchanged) src/lib/ae_posts/ae_posts__post_comment.ts 8ms (unchanged) src/lib/ae_posts/ae_posts__post.ts 12ms (unchanged) src/lib/ae_posts/ae_posts_functions.ts 1ms (unchanged) src/lib/ae_posts/db_posts.ts 2ms (unchanged) src/lib/ae_posts/README.md 2ms (unchanged) src/lib/ae_sponsorships/ae_sponsorships_functions.ts 7ms (unchanged) src/lib/ae_sponsorships/db_sponsorships.ts 2ms (unchanged) src/lib/ae_sponsorships/README.md 2ms (unchanged) src/lib/ae_utils/ae_utils__crypto.ts 5ms (unchanged) src/lib/ae_utils/ae_utils__datetime_format.ts 3ms (unchanged) src/lib/ae_utils/ae_utils__extract_prefixed_form_data.ts 3ms (unchanged) src/lib/ae_utils/ae_utils__file_extension_icon.ts 1ms (unchanged) src/lib/ae_utils/ae_utils__files.ts 2ms (unchanged) src/lib/ae_utils/ae_utils__get_obj_li_w_match_prop.ts 1ms (unchanged) src/lib/ae_utils/ae_utils__is_datetime_recent.ts 1ms (unchanged) src/lib/ae_utils/ae_utils__perm_checks.ts 3ms (unchanged) src/lib/ae_utils/ae_utils__process_data_string.ts 2ms (unchanged) src/lib/ae_utils/ae_utils__return_obj_type_path.ts 2ms (unchanged) src/lib/ae_utils/ae_utils__set_obj_prop_display_name.ts 2ms (unchanged) src/lib/ae_utils/ae_utils__to_title_case.ts 2ms (unchanged) src/lib/ae_utils/ae_utils.ts 5ms (unchanged) src/lib/api/api.ts 14ms (unchanged) src/lib/app_components/analytics.svelte 3ms (unchanged) src/lib/app_components/e_app_access_type.svelte 26ms (unchanged) src/lib/app_components/e_app_cfg.svelte 12ms (unchanged) src/lib/app_components/e_app_clipboard.svelte 6ms (unchanged) src/lib/app_components/e_app_codemirror_v5.svelte 8ms (unchanged) src/lib/app_components/e_app_debug_menu.svelte 7ms (unchanged) src/lib/app_components/e_app_help_tech.svelte 26ms (unchanged) src/lib/app_components/e_app_sign_in_out.svelte 32ms (unchanged) src/lib/app_components/e_app_sys_menu.svelte 25ms (unchanged) src/lib/app_components/e_app_theme.svelte 9ms (unchanged) src/lib/components/ui/button/button.svelte 6ms (unchanged) src/lib/components/ui/button/index.js 1ms (unchanged) src/lib/components/ui/button/index.ts 1ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte 5ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte 2ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte 2ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte 2ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte 2ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte 3ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte 2ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte 2ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte 2ms (unchanged) src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte 2ms (unchanged) src/lib/components/ui/dropdown-menu/index.js 1ms (unchanged) src/lib/components/ui/dropdown-menu/index.ts 1ms (unchanged) src/lib/components/ui/input/index.js 0ms (unchanged) src/lib/components/ui/input/index.ts 0ms (unchanged) src/lib/components/ui/input/input.svelte 2ms (unchanged) src/lib/components/ui/popover/index.js 0ms (unchanged) src/lib/components/ui/popover/index.ts 1ms (unchanged) src/lib/components/ui/popover/popover-content.svelte 2ms (unchanged) src/lib/components/ui/separator/index.js 0ms (unchanged) src/lib/components/ui/separator/index.ts 1ms (unchanged) src/lib/components/ui/separator/separator.svelte 2ms (unchanged) src/lib/components/ui/tooltip/index.js 0ms (unchanged) src/lib/components/ui/tooltip/index.ts 1ms (unchanged) src/lib/components/ui/tooltip/tooltip-content.svelte 2ms (unchanged) src/lib/electron/electron_native.js 33ms (unchanged) src/lib/electron/electron_relay.js 6ms (unchanged) src/lib/electron/README.md 4ms (unchanged) src/lib/element_qr_scanner_v2.svelte 15ms (unchanged) src/lib/elements/element_ae_crud_v2.svelte 22ms (unchanged) src/lib/elements/element_ae_crud.svelte 20ms (unchanged) src/lib/elements/element_codemirror_editor.svelte 4ms (unchanged) src/lib/elements/element_codemirror_wrapper.svelte 1ms (unchanged) src/lib/elements/element_data_store_v2.svelte 38ms (unchanged) src/lib/elements/element_data_store.svelte 29ms (unchanged) src/lib/elements/element_input_file.svelte 13ms (unchanged) src/lib/elements/element_input_files_tbl.svelte 13ms (unchanged) src/lib/elements/element_input_v2.svelte 59ms (unchanged) src/lib/elements/element_manage_event_file_li_all.svelte 2ms (unchanged) src/lib/elements/element_manage_event_file_li_direct.svelte 2ms (unchanged) src/lib/elements/element_manage_event_file_li.svelte 45ms (unchanged) src/lib/elements/element_manage_hosted_file_li_all.svelte 8ms (unchanged) src/lib/elements/element_manage_hosted_file_li.svelte 15ms (unchanged) src/lib/elements/element_obj_tbl_row.svelte 11ms (unchanged) src/lib/elements/element_sql_qry.svelte 6ms (unchanged) src/lib/elements/element_tiptap_editor.scss 2ms (unchanged) src/lib/elements/element_websocket_v2.svelte 16ms (unchanged) src/lib/stores/ae_events_stores.ts 6ms (unchanged) src/lib/stores/ae_idaa_stores.ts 2ms (unchanged) src/lib/stores/ae_stores.ts 6ms (unchanged) src/lib/utils/ae_string_snippets.ts 1ms (unchanged) src/lib/utils/index.ts 0ms (unchanged) src/lib/utils/utils.ts 1ms (unchanged) src/parent_iframe.html 5ms (unchanged) src/routes/+layout.svelte 31ms (unchanged) src/routes/+layout.ts 5ms (unchanged) src/routes/+page.svelte 7ms (unchanged) src/routes/admin/+layout.svelte 6ms (unchanged) src/routes/admin/+page.svelte 8ms (unchanged) src/routes/core/+layout.svelte 3ms (unchanged) src/routes/core/+page.svelte 15ms (unchanged) src/routes/core/+page.ts 0ms (unchanged) src/routes/core/ae_comp__person_obj_tbl.svelte 9ms (unchanged) src/routes/core/not_used+layout.ts 1ms (unchanged) src/routes/core/person_view.svelte 55ms (unchanged) src/routes/core/person/[person_id]/+page.svelte 13ms (unchanged) src/routes/core/person/[person_id]/+page.ts 2ms (unchanged) src/routes/core/README.md 2ms (unchanged) src/routes/events_badges/+layout.svelte 7ms (unchanged) src/routes/events_badges/+layout.ts 1ms (unchanged) src/routes/events_badges/+page.svelte 2ms (unchanged) src/routes/events_badges/+page.ts 0ms (unchanged) src/routes/events_badges/README.md 3ms (unchanged) src/routes/events_badges/review/+layout.ts 1ms (unchanged) src/routes/events_badges/review/+page.svelte 35ms (unchanged) src/routes/events_badges/stats/+layout.ts 1ms (unchanged) src/routes/events_badges/stats/+page.svelte 33ms (unchanged) src/routes/events_leads/+layout.svelte 2ms (unchanged) src/routes/events_leads/+layout.ts 1ms (unchanged) src/routes/events_leads/+page.svelte 8ms (unchanged) src/routes/events_leads/+page.ts 1ms (unchanged) src/routes/events_leads/exhibit/[slug]/+page.svelte 36ms (unchanged) src/routes/events_leads/exhibit/[slug]/+page.ts 2ms (unchanged) src/routes/events_leads/exhibit/[slug]/leads_add_scan.svelte 37ms (unchanged) src/routes/events_leads/exhibit/[slug]/leads_list.svelte 25ms (unchanged) src/routes/events_leads/exhibit/[slug]/leads_manage.svelte 40ms (unchanged) src/routes/events_leads/exhibit/[slug]/leads_payment.svelte 10ms (unchanged) src/routes/events_leads/exhibit/[slug]/leads_view_lead.svelte 42ms (unchanged) src/routes/events_leads/README.md 4ms (unchanged) src/routes/events/[event_id]/(badges)/badges/[badge_id]/+page.svelte 5ms (unchanged) src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_obj_view.svelte 41ms (unchanged) src/routes/events/[event_id]/(badges)/badges/+layout.svelte 3ms (unchanged) src/routes/events/[event_id]/(badges)/badges/+page.svelte 5ms (unchanged) src/routes/events/[event_id]/(badges)/badges/ae_comp__badge_obj_li.svelte 9ms (unchanged) src/routes/events/[event_id]/(badges)/badges/ae_comp__badge_search.svelte 15ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher_cfg.svelte 26ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher_file_cont.svelte 32ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher_menu.svelte 12ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher_presenter_view_posters.svelte 6ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher_presenter_view.svelte 6ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher_session_view.svelte 17ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher/[event_location_id]/+page.svelte 4ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher/[event_location_id]/+page.ts 2ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher/+layout.svelte 45ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher/+layout.ts 2ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher/+page.svelte 0ms (unchanged) src/routes/events/[event_id]/(launcher)/launcher/+page.ts 0ms (unchanged) src/routes/events/[event_id]/(launcher)/menu_location_list.svelte 6ms (unchanged) src/routes/events/[event_id]/(launcher)/menu_session_list.svelte 10ms (unchanged) src/routes/events/[event_id]/+layout.svelte 2ms (unchanged) src/routes/events/[event_id]/+layout.ts 1ms (unchanged) src/routes/events/[event_id]/+page.svelte 20ms (unchanged) src/routes/events/[event_id]/+page.ts 1ms (unchanged) src/routes/events/[event_id]/device/ae_comp__event_device_obj_li_wrapper.svelte 2ms (unchanged) src/routes/events/[event_id]/device/ae_comp__event_device_obj_li.svelte 28ms (unchanged) src/routes/events/[event_id]/event_page_menu.svelte 37ms (unchanged) src/routes/events/[event_id]/location/[event_location_id]/+page.svelte 11ms (unchanged) src/routes/events/[event_id]/location/[event_location_id]/+page.ts 2ms (unchanged) src/routes/events/[event_id]/location/[event_location_id]/location_page_menu.svelte 26ms (unchanged) src/routes/events/[event_id]/location/[event_location_id]/location_view.svelte 27ms (unchanged) src/routes/events/[event_id]/locations/+page.svelte 5ms (unchanged) src/routes/events/[event_id]/locations/ae_comp__event_location_obj_li.svelte 18ms (unchanged) src/routes/events/[event_id]/locations/locations_page_menu.svelte 11ms (unchanged) src/routes/events/[event_id]/presenter/[presenter_id]/+page.svelte 17ms (unchanged) src/routes/events/[event_id]/presenter/[presenter_id]/+page.ts 1ms (unchanged) src/routes/events/[event_id]/presenter/[presenter_id]/ae_comp__event_presenter_form_agree.svelte 13ms (unchanged) src/routes/events/[event_id]/presenter/[presenter_id]/presenter_page_menu.svelte 30ms (unchanged) src/routes/events/[event_id]/presenter/[presenter_id]/presenter_view.svelte 108ms (unchanged) src/routes/events/[event_id]/presenter/ae_comp__event_presenter_obj_li_wrapper.svelte 3ms (unchanged) src/routes/events/[event_id]/presenter/ae_comp__event_presenter_obj_li.svelte 22ms (unchanged) src/routes/events/[event_id]/presenter/ae_comp__event_presenter_obj_tbl_wrapper.svelte 4ms (unchanged) src/routes/events/[event_id]/presenter/ae_comp__event_presenter_obj_tbl.svelte 15ms (unchanged) src/routes/events/[event_id]/reports/+page.svelte 66ms (unchanged) src/routes/events/[event_id]/reports/event_reports_page_menu.svelte 16ms (unchanged) src/routes/events/[event_id]/reports/reports_files.svelte 14ms (unchanged) src/routes/events/[event_id]/reports/reports_presenters.svelte 9ms (unchanged) src/routes/events/[event_id]/reports/reports_sessions.svelte 10ms (unchanged) src/routes/events/[event_id]/session/[session_id]/+page.svelte 16ms (unchanged) src/routes/events/[event_id]/session/[session_id]/+page.ts 2ms (unchanged) src/routes/events/[event_id]/session/[session_id]/ae_comp__event_session_poc_form_agree.svelte 17ms (unchanged) src/routes/events/[event_id]/session/[session_id]/ae_comp__event_session_poc_profile.svelte 9ms (unchanged) src/routes/events/[event_id]/session/[session_id]/session_page_menu.svelte 30ms (unchanged) src/routes/events/[event_id]/session/[session_id]/session_view.svelte 59ms (unchanged) src/routes/events/[event_id]/session/ae_comp__event_session_alert.svelte 9ms (unchanged) src/routes/events/[event_id]/sign_in_out.svelte 7ms (unchanged) src/routes/events/+layout.svelte 11ms (unchanged) src/routes/events/+layout.ts 1ms (unchanged) src/routes/events/+page.svelte 7ms (unchanged) src/routes/events/+page.ts 1ms (unchanged) src/routes/events/ae_comp__event_file_obj_tbl_wrapper.svelte 3ms (unchanged) src/routes/events/ae_comp__event_file_obj_tbl.svelte 31ms (unchanged) src/routes/events/ae_comp__event_files_upload.svelte 10ms (unchanged) src/routes/events/ae_comp__event_presentation_obj_li.svelte 27ms (unchanged) src/routes/events/ae_comp__event_session_obj_li_wrapper.svelte 2ms (unchanged) src/routes/events/ae_comp__event_session_obj_li.svelte 31ms (unchanged) src/routes/events/ae_comp__event_session_obj_tbl_wrapper.svelte 3ms (unchanged) src/routes/events/ae_comp__event_session_obj_tbl.svelte 5ms (unchanged) src/routes/events/ae_comp__events_menu_nav.svelte 5ms (unchanged) src/routes/events/ae_comp__events_menu_opts.svelte 25ms (unchanged) src/routes/events/README.md 3ms (unchanged) src/routes/hosted_files/+layout.svelte 2ms (unchanged) src/routes/hosted_files/+layout.ts 1ms (unchanged) src/routes/hosted_files/+page.svelte 3ms (unchanged) src/routes/hosted_files/video_util/+page.svelte 8ms (unchanged) src/routes/hosted_files/video_util/hold_video_util.svelte 7ms (unchanged) src/routes/idaa/(idaa)/+layout.svelte 6ms (unchanged) src/routes/idaa/(idaa)/archives/[archive_id]/+page.svelte 12ms (unchanged) src/routes/idaa/(idaa)/archives/[archive_id]/+page.ts 2ms (unchanged) src/routes/idaa/(idaa)/archives/[archive_id]/ae_idaa_comp__archive_content_obj_id_edit.svelte 32ms (unchanged) src/routes/idaa/(idaa)/archives/[archive_id]/ae_idaa_comp__archive_content_obj_li.svelte 15ms (unchanged) src/routes/idaa/(idaa)/archives/[archive_id]/ae_idaa_comp__archive_obj_id_edit.svelte 19ms (unchanged) src/routes/idaa/(idaa)/archives/[archive_id]/ae_idaa_comp__archive_obj_id_view.svelte 10ms (unchanged) src/routes/idaa/(idaa)/archives/[archive_id]/ae_idaa_comp__modal_media_player.svelte 4ms (unchanged) src/routes/idaa/(idaa)/archives/[archive_id]/not_used+layout.ts 0ms (unchanged) src/routes/idaa/(idaa)/archives/+layout.svelte 1ms (unchanged) src/routes/idaa/(idaa)/archives/+layout.ts 1ms (unchanged) src/routes/idaa/(idaa)/archives/+page.svelte 5ms (unchanged) src/routes/idaa/(idaa)/archives/ae_idaa_comp__archive_obj_li.svelte 5ms (unchanged) src/routes/idaa/(idaa)/archives/ae_idaa_comp__media_player.svelte 6ms (unchanged) src/routes/idaa/(idaa)/bb/[post_id]/+page.svelte 7ms (unchanged) src/routes/idaa/(idaa)/bb/[post_id]/+page.ts 1ms (unchanged) src/routes/idaa/(idaa)/bb/+layout.svelte 2ms (unchanged) src/routes/idaa/(idaa)/bb/+layout.ts 1ms (unchanged) src/routes/idaa/(idaa)/bb/+page.svelte 7ms (unchanged) src/routes/idaa/(idaa)/bb/+page.ts 2ms (unchanged) src/routes/idaa/(idaa)/bb/ae_idaa_comp__post_comment_obj_id_edit.svelte 26ms (unchanged) src/routes/idaa/(idaa)/bb/ae_idaa_comp__post_obj_id_edit.svelte 38ms (unchanged) src/routes/idaa/(idaa)/bb/ae_idaa_comp__post_obj_id_view.svelte 17ms (unchanged) src/routes/idaa/(idaa)/bb/ae_idaa_comp__post_obj_li.svelte 9ms (unchanged) src/routes/idaa/(idaa)/bb/ae_idaa_comp__post_options.svelte 8ms (unchanged) src/routes/idaa/(idaa)/hold_+page.svelte 0ms (unchanged) src/routes/idaa/(idaa)/hold_app.pcss 7ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/[event_id]/+page.svelte 8ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/[event_id]/+page.ts 1ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/+layout.svelte 2ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/+layout.ts 1ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/+page.svelte 9ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/ae_idaa_comp__event_obj_id_edit.svelte 80ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/ae_idaa_comp__event_obj_id_view.svelte 34ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/ae_idaa_comp__event_obj_li_wrapper.svelte 3ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/ae_idaa_comp__event_obj_li.svelte 24ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/ae_idaa_comp__event_obj_qry.svelte 27ms (unchanged) src/routes/idaa/(idaa)/recovery_meetings/not_used+page.ts 0ms (unchanged) src/routes/idaa/+layout.svelte 9ms (unchanged) src/routes/idaa/README.md 3ms (unchanged) src/routes/journals/[journal_id]/+layout.svelte 12ms (unchanged) src/routes/journals/[journal_id]/+layout.ts 2ms (unchanged) src/routes/journals/[journal_id]/+page.svelte 8ms (unchanged) src/routes/journals/[journal_id]/+page.ts 1ms (unchanged) src/routes/journals/[journal_id]/entry/[journal_entry_id]/+page.svelte 6ms (unchanged) src/routes/journals/[journal_id]/entry/[journal_entry_id]/+page.ts 1ms (unchanged) src/routes/journals/+layout.svelte 14ms (unchanged) src/routes/journals/+layout.ts 1ms (unchanged) src/routes/journals/+page.svelte 8ms (unchanged) src/routes/journals/+page.ts 1ms (unchanged) src/routes/journals/ae_comp__journal_entry_obj_file_li.svelte 12ms (unchanged) src/routes/journals/ae_comp__journal_entry_obj_id_view.svelte 102ms (unchanged) src/routes/journals/ae_comp__journal_entry_obj_li.svelte 34ms (unchanged) src/routes/journals/ae_comp__journal_entry_obj_qry.svelte 7ms (unchanged) src/routes/journals/ae_comp__journal_obj_id_edit.svelte 39ms (unchanged) src/routes/journals/ae_comp__journal_obj_id_view.svelte 9ms (unchanged) src/routes/journals/ae_comp__journal_obj_li.svelte 6ms (unchanged) src/routes/journals/ae_comp__obj_core_props.svelte 12ms (unchanged) src/routes/journals/modal_journals_config.svelte 12ms (unchanged) src/routes/journals/README.md 2ms (unchanged) src/routes/testing/+layout.ts 0ms (unchanged) src/routes/testing/+page.svelte 4ms (unchanged) static/idaa_novi_iframe_archives.html 4ms (unchanged) static/idaa_novi_iframe_bulletin_board.html 3ms (unchanged) static/idaa_novi_iframe_jitsi_meeting.html 3ms (unchanged) static/idaa_novi_iframe_recovery_meetings.html 3ms (unchanged) static/jitsi_iframe_api.html 4ms (unchanged) static/manifest.json 1ms (unchanged) SVELTE_DEXIE_GUIDE.md 8ms (unchanged) svelte.config.js 1ms (unchanged) test-results/.last-run.json 0ms (unchanged) tests/example.test.ts 1ms (unchanged) TODO.md 18ms (unchanged) tsconfig.json 1ms (unchanged) vite.config.ts 1ms (unchanged) vitest.config.ts 0ms (unchanged) to clean up dependencies and fix formatting.
2.4 KiB
2.4 KiB
IDAA Integration Module
This module integrates features from the Aether (AE) application into the IDAA (International Doctors in Alcoholics Anonymous) website, which is powered by a system called Novi. The integration is achieved by embedding Aether pages within iframes inside the Novi site.
This directory (src/routes/idaa) contains the Svelte routes that correspond to the pages on the main IDAA site.
Architecture
The integration uses a multi-step iframe-based approach:
- Novi Page: A page on the IDAA website contains a snippet of code that loads a static HTML file from this Aether project's
static/directory into an iframe. - Static HTML Bridge: The static file (e.g.,
static/idaa_novi_iframe_archives.html) acts as a bridge. It contains JavaScript that: a. Executes within the context of the Novi site, allowing it to access Novi-specific data like the current user's unique ID (<%=Novi.User.CustomerUniqueId%>). b. Uses the Novi user ID to make a call to the Novi API to get more user details (like email and full name). c. Uses the retrieved user details to construct a URL for the actual Aether application page. d. Loads the Aether page into a nested iframe on the static page. - Aether Application: The final Aether page (e.g.,
/idaa/archives) receives the user information via URL parameters and displays the relevant content.
This architecture allows the Aether application to securely authenticate and identify the Novi user without a complex SSO integration.
Sub-modules
The IDAA integration includes the following features, each corresponding to a route in this directory and a static HTML bridge file.
IDAA - Archives
- Route:
/idaa/archives - Bridge File:
static/idaa_novi_iframe_archives.html - Functionality: Provides access to the Aether Archives module, allowing IDAA members to view and search archived content.
IDAA - Bulletin Board (BB)
- Route:
/idaa/bb - Bridge File:
static/idaa_novi_iframe_bulletin_board.html - Functionality: Provides a bulletin board or forum feature, powered by the Aether Posts module.
IDAA - Recovery Meetings
- Route:
/idaa/recovery_meetings - Bridge File:
static/idaa_novi_iframe_recovery_meetings.html - Functionality: Displays a list of recovery meetings. This may also integrate with a Jitsi meeting interface (
idaa_novi_iframe_jitsi_meeting.html).