catalyst
catalyst copied to clipboard
Catalyst is a set of patterns and techniques for developing components within a complex application.
This is maybe related to #117, but not 100% sure on that. With a component defined like this: ```typescript import { controller, attr } from '@github/catalyst' @controller class TestComponentElement extends...
👋 It would be great if it was in the kernel, `data` prefix is redundant for custom elements.
This PR adds an `@style` decorator which allows for ergonomic adopted stylesheets in a shadow DOM context.
The `attributeChangedCallback` function is called whenever an observed attribute is set, added or removed. The `attributeChangedCallback` is called with the raw values of the attribute name, old value and new...
Hi folks, While I was testing the attributes — trying to work my way around #207 — I found another subtle detail. Manually initialized attributes are never observed. Catalyst's guide...
Hi there 😄 After upgrading from v1.1.4 to v1.3.2, I noticed that my attributes were no longer shadowed by `initializeAttrs()`. I started digging and stumbled upon this piece of logic...
Right now we drop the Element suffix which makes sense given the precedent of web platform tags which all have constructors ending Element (eg `HTMLDivElement`). However for other design systems...
Right now Safari doesn't support `is=` and so we cannot extend built ins, which is a shame because they include some good features which we could benefit from, for example...
It would be convenient to know when targets change, so actions can be taken accordingly.
Actions cannot be bound in a closed shadow root. This should just work.