feat(field-editor): modernize field editor with non-blocking modal and viewport clamping

- Completed rewrite of `element_ae_obj_field_editor.svelte` to Svelte 5 + Tailwind v4
- Set `display_modal = true`, `modal_blocking = false`, and `modal_placement = 'center'` as new defaults
- Implemented trigger-relative modal positioning with automatic viewport boundary clamping to prevent off-screen rendering
- Migrated all 12 call sites across core and events modules (Session, Presenter, Location, Exhibit, etc.)
- Removed legacy datetime-to-local manual conversion logic from views as the component now handles it natively
- Retired Skeleton-based legacy component
- Updated testing page and documentation to reflect the new standardized primitive
This commit is contained in:
Scott Idem
2026-06-17 18:01:08 -04:00
parent ea413bbb9b
commit d06dcae94b
14 changed files with 527 additions and 1075 deletions

View File

@@ -49,9 +49,9 @@ Axonius DC (June 9) is done — the show happened and the badge layout work that
---
## 🚧 AE Obj Field Editor — `_new` Rewrite (planning, 2026-06-16)
## AE Obj Field Editor — `_new` Rewrite (complete 2026-06-16)
`element_ae_obj_field_editor.svelte` is getting a parallel-run rewrite: Skeleton UI → Tailwind/Flowbite, removes the dead `object_reload` prop, fixes datetime format conversion (currently the caller's job, one-directional), fixes a latent select-binding type-coercion landmine, adds `email`/`url`/`tel` field types, adds generics for `current_value`/`draft_value`. Both versions run side by side until all 8 call sites are migrated and verified; see `PROJECT__AE_Obj_Field_Editor_New.md` for the full plan and migration order. Not started yet — no code written.
`element_ae_obj_field_editor.svelte` has been successfully rewritten and migrated: Skeleton UI → Tailwind/Flowbite, removes the dead `object_reload` prop, fixes datetime format conversion, fixes select-binding type-coercion, adds `email`/`url`/`tel` field types, and adds generics for `current_value`/`draft_value`. All 12+ call sites have been migrated and verified. The legacy component has been retired and the `_new` suffix removed. Full detail in `PROJECT__AE_Obj_Field_Editor_New.md`.
---