goauthentik / goauthentik/authentik
Move Flow Component Content Into The LightDOM
- Dominant language
- Python
- Stars
- 25.6k
- Forks
- 2k
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 644
Description
I would like to be able to use common browser-based password managers to input my identity and credentials without having to type or memorize them. I would also like to be able to test the authentik UI directly without having to delve deep into the guts of shadowDOM components.
It should be possible and, for the most part, straightforward to convert our layout components to be just that: layout, and our business logic components to live separately from layouts.
We propose a refinement of the Web Component model:
1. For styling layouts, where a component has one obvious way to do something, such as a documentation, content, or card, the component *may* automatically assign slots based on the "shape" of the content: if a header, footer, and article tag or present, the component may automatically assign slots if none are already assigned.
2. For styling collections, where a component lightDOM contains many uniform copies of the same thing (such as a list, a table, or a tree), if the component is confident it can validate the shape, it may build a dynamic layout object of slots and project the lightDOM elements as needed.
3. For constrained elements such an inputs, textareas, and other controls, the component will automatically generate its own layout _and_ build into its own lightDOM the component to be rendered, its position and behavior projected into the shadowDOM by an in-line slot.
Contributor guide
Assessment
This issue has not been assessed yet.