@t2falcon/ui-angular
v0.2.17
Published
Typed Angular directives for the Falcon design system's custom elements — a typed template surface (inputs forwarded to element properties, outputs as lazy fromEvent streams) generated from @falcon/ui-core's own component metadata.
Readme
@t2falcon/ui-angular
Typed Angular directives for every <falcon-*> custom element in @t2falcon/ui-core.
Custom elements are invisible to the Angular compiler: with CUSTOM_ELEMENTS_SCHEMA,
<falcon-card> has no symbol behind it — no Ctrl+click, no autocomplete, and a misspelled
input fails silently at runtime. This package gives each tag a typed template surface:
- a typed
@Inputper component property, forwarded to the element under the element's own property name (an Angular input binds to the directive, so without the forward the component would receive nothing); - a typed
@Outputper component event as a lazyfromEventstream — including the camelCase names (falconSearch) that break the library's kebab-case convention.
import { FalconTableDirective, FalconSearchInputDirective } from '@t2falcon/ui-angular';
@Component({
imports: [FalconTableDirective, FalconSearchInputDirective],
schemas: [CUSTOM_ELEMENTS_SCHEMA], // stays — the safety net for anything untyped
...
})Every directive is standalone and side-effect free, so unused ones tree-shake away.
FALCON_ELEMENTS exports the full set for a component that wants them all in one import
(at the cost of bundling all of them).
The source is generated from @t2falcon/ui-core's web-types.json (Stencil's own collection
metadata) at library build time — it always matches the ui-core version published alongside it.
