Appearance
OmniDataEditor
OmniDataEditor is a framework independent TypeScript editing engine. It manages entity drafts, validation, asynchronous persistence and concurrent changes. Presentations bind native controls to sessions; hosts connect existing UI libraries through focused capabilities.
Getting started
- Installation and basic usage
- Interactive playground and local examples
- Standalone and headless editing
Editing and integrations
| Topic | Guide |
|---|---|
| Validation and field issues | Validation |
| Saving and uncertain results | Persistence |
| Reproducible recovery flows | Recovery example |
| Concurrent changes | Conflicts |
| Batch operations | Multiple entities |
| Anchored controls and focus | Inline editing |
| DataTables integration | DataTables |
| Tabulator integration | Tabulator |
| Cancellable option loading | Asynchronous selection |
Extensions
Packages
Package under @omnidataeditor/ | Responsibility |
|---|---|
| editor | Common factories and type exports |
| core | Headless sessions, fields, changes, validation, persistence and conflicts |
| dom | Native controls, renderer registry, forms, focus and viewport contracts |
| presentation-dialog | Native modal dialog |
| presentation-inline | Anchored editing with explicit focus boundaries |
| host-datatables | DataTables capabilities with optional Select support |
| host-tabulator | Tabulator capabilities and explicit index mapping |
| field-async-select | Independent cancellable asynchronous selection renderer |
| theme-default | Explicit CSS entry point and theme properties |
All public packages use synchronized versions and ESM exports. Import styles explicitly. JavaScript entry points are safe to import in Node and server bundles; rendering controls requires a browser. Core has zero runtime dependencies.