What things do we need to compile, and how?
Features that don't exist or have direct equivalents will need to be compiled to lower-fidelity native web-component behaviors and APIs,
Yield and Named Yield
Blocks and named blocks / slots can provide data back to the caller
Potentially:
https://fancy-pants.js.org/module-component-Component.html#yields
...attributes
Applying all attributes on a specific element within the component.
Currying components, modifiers, helpers
Yielding pre-wired up components, modifiers, and helper-functions to the caller.
Could maybe do https://lit.dev/docs/data/context/
Reactivity
Optimized minimal updates to the DOM when data changes
Template Control Flow
ifs, each, etc
What things do we need to compile, and how?
Features that don't exist or have direct equivalents will need to be compiled to lower-fidelity native web-component behaviors and APIs,
Yield and Named Yield
Blocks and named blocks / slots can provide data back to the caller
Potentially:
https://fancy-pants.js.org/module-component-Component.html#yields
...attributesApplying all attributes on a specific element within the component.
Currying components, modifiers, helpers
Yielding pre-wired up components, modifiers, and helper-functions to the caller.
Could maybe do https://lit.dev/docs/data/context/
Reactivity
Optimized minimal updates to the DOM when data changes
Template Control Flow
ifs, each, etc