Thank you for being patient! We're working hard on resolving the issue
@tento-lona/sheets carries the row taxonomy, render pipeline, and
backend interface — but it has zero dependency on @tento-lona.
This split is intentional.
@tento-core (data structures, algorithms — dep-free utilities)
↑
@tento-lona/sheets (data model + render pipeline — NO DOM, NO SDK client)
↑
@tento-lona (SDK client: LonaSdk, RowClient, indices, prefs)
↑
@tento-lona/sheets-ui (DOM platform impl: Sheet web component, plugins, gestures)
↑
lona-so (application: app-specific UI, LonaApi, feature flags)
A consumer can pick the level it needs:
@tento-lona/sheets alone.@tento-lona/sheets plus its own platform layer — no SDK client
needed.lona-so opens an SDK client (@tento-lona) and
composes the DOM front-end (@tento-lona/sheets-ui) on top.Sheet, SheetRow, RowKey, RowId, RowLocalIdDtype, CellEntry, CellValue,
CellStyle, Cardinality, the canonical encodings
(EVENT_V1, TASK_V1, WEATHER_V1, SLOT_V1)Backend interface plus TestBackend,
NormalizingBackend, CanonicalBackend, HttpBackendROW_TYPE_SPECS,
reconcileAttributes, resolveChildren, dataPresetToChildSpecsALIAS_TEMPLATES, expandAliasInstance,
resolveAliasActiveLayout, the built-in alias factoriesbuildSystemRows, HEADERS_STATIC,
FOOTERS_STATICPerTypeSpec, RenderScene,
buildScene, diffScene, TreeWatcher, LayoutEngine,
RenderPlan, plugin data providers, TuiReconcilerLinearYScaler, castData, formatValue,
GraphData, ChartPointerStore, DiscreteConvolution@tento-lonaLonaSdk.Client, RowClient, CellHandle,
RangeCellHandle, RowsAccessorCalendarClient, EventsClient,
TasksClient, ChatAgentClient, SchedulingLinksClient,
SyncClientPreferencesClient and the per-feature storesEventsIndex, TasksIndex, DataIndex,
RegressionIndex (cache-backed accessors over the canonical
cells the rows-side Sheet exposes)SheetViewModel, RowTree, buildRowTreeIf a name clearly belongs to "data model" or "render pipeline" but
sits in @tento-lona, it's a migration candidate — open an issue.
@tento-lona/Package Architecture —
the four-package map