tcmts.cli.roles

test/
1 definitions
HOST_PROTOCOLS readonly number[]
The versions of tcm's host protocol this tcm serves: what a library reaching tcm's runtime (React's routes, links and data, the server API's tables and jobs) speaks, as its manifest's `host` says. 1 is the page's globals the runtime sets (`__TCM_BASE__`, `__TCM_STATIC__`, `__TCM_STYLESHEETS__`, `__TCM_TREES__`, `__tcmPrefetch` and `__tcmUpdate`) and the server host `#tcm/host` (`createServerHost`'s exports).
ROLES { readonly stylesheet: "a component given a stylesheet file as `css={…}`: the browser is sent the f…
The roles a package's manifest can give its definitions (`roles: { Sheet: "stylesheet" }`): what tcm's analysis and build treat specially, known by the definition's hash rather than by where it's imported from, so a library's versions of them are known too.
Role type
codebaseRoles (cb: Evaluating) => ReadonlyMap<string, "every" | "stylesheet" | "table">
The roles of a branch's definitions (rolesIn), read again only when its names have changed: asked for each definition analyzed, each page shown and each app started.
hostRefusal (cb: Codebase, closure: ReadonlySet<string>, rows?: NameRow[]) => string | undefined
Why an app using these definitions (its closure, by hash) can't be built by this tcm, if it can't: a package it uses speaks a version of tcm's host protocol this tcm doesn't serve (HOST_PROTOCOLS).
manifestsIn (cb: Evaluating, rows?: NameRow[]) => { namespace: string; manifest: Manifest; }[]
Every package manifest a branch's names hold, its libraries' included (`packagesIn` leaves those out: they aren't this codebase's to release): the namespace each is of, and what it says.
rolesIn (cb: Evaluating, rows?: NameRow[]) => Map<string, "every" | "stylesheet" | "table">
The roles the codebase's packages give their definitions (`roles` in a manifest), its libraries' included: each definition's hash, and its role. A version of a library's that a codebase holds is known by its hash wherever it's used from.
rolesRead WeakMap<Store, { key: string; roles: ReadonlyMap<string, "every" | "stylesheet" | "table">; }>
The roles read last, by store, with the branch and name change they were read at.