API Reference Noizu.Tessera v#0.2.0

Copy Markdown View Source

Modules

Code generators over a Noizu.Tessera.Spec

use Noizu.Tessera.Component, tag: "persona-card", js: "persona_card.mjs"

SPIKE (spike/elixir-to-lit): translator for the restricted Elixir subset accepted inside tessera element action/2 bodies and ~TSR template expressions (see docs/notes/spike-elixir-to-lit.md §subset).

The shared Elixir derivation layer behind use Vendor.Element, tag: … (EXTENSION-CONTRACT.md §5). Runtime-agnostic on purpose: Tier 1 (compiled to Lit) uses it now, and Tier 2 (Hologram-in-element, brief 3f) reuses the same merge + dispatcher generation — the spec is the single interface between definition and runtime (§9).

SPIKE (spike/elixir-to-lit): emits the Lit element module for a spec that declared state / template ~TSR / action (docs/notes/spike-elixir-to-lit.md §codegen).

CSS helpers for the styles DSL (EXTENSION-CONTRACT.md §7 theming).

SPIKE (spike/elixir-to-lit): ~TSR element-template parsing and lit-html emission (docs/notes/spike-elixir-to-lit.md §template-parser).

Mechanical shape extraction from a Lit 3 component source (.js/.ts).

Turns a Noizu.Tessera.FromLit.Extractor shape descriptor into a tessera component stub: the spec module (attr/prop/event/slot/cy DSL), a colocated Lit-based .mjs element template, and the WTR test skeleton.

Generates the Hologram component (the "adapter", CONTRACT.md §3/§5) inside a module that did use Noizu.Tessera.Component.

Tier 2 spike: compiles ORDINARY Hologram components into standalone, host-agnostic bundles by driving Hologram's own compiler pipeline.

Naming conversions of the tessera wire contract (CONTRACT.md §1).

use Noizu.Tessera.Package, components: [MyApp.PersonaCard, ...]

The compiled spec of a tessera component (CONTRACT.md is authoritative).

Mix Tasks

Writes the Custom Elements Manifest (Noizu.Tessera.Codegen.cem/1, schemaVersion "1.0.0") for a tessera component package

Compiles one or more ORDINARY Hologram components into standalone, host-agnostic bundles using Hologram's own compiler (Tier 2 spike).

Converts an existing Lit 3 component (.js/.ts) into a tessera component stub in the current Mix project

Scaffolds a tessera web component in the current Mix project

Scaffolds the tessera component gallery for a package in the current Mix project

Rewrites the checked-in goldens under test/fixtures/ from the CURRENT generators

Prepares a Hologram host app's assets/ for tessera components

Aggregates __tessera_manifest__/0 across every tessera component in the current Mix project and its loaded deps, then writes