feat(DeesElement): Add invocation of the themeChanged hook in connectedCallback
This commit is contained in:
@ -1,5 +1,11 @@
|
||||
# Changelog
|
||||
|
||||
## 2025-07-06 - 2.1.0 - feat(DeesElement)
|
||||
Add invocation of the themeChanged hook in connectedCallback
|
||||
|
||||
- Now calls themeChanged (if defined) when the theme changes, enabling custom handlers for theme switches
|
||||
- Improves lifecycle management by allowing extensions to react to bright/dark mode changes
|
||||
|
||||
## 2025-06-20 - 2.0.44 - fix(ci)
|
||||
Remove obsolete GitLab CI configuration
|
||||
|
||||
|
@ -3,6 +3,6 @@
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@design.estate/dees-element',
|
||||
version: '2.0.44',
|
||||
version: '2.1.0',
|
||||
description: 'A library for creating custom elements extending the lit element class with additional functionalities.'
|
||||
}
|
||||
|
@ -25,11 +25,22 @@ export class DeesElement extends plugins.lit.LitElement {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Called when the theme changes between bright and dark.
|
||||
* Override this method to handle theme changes.
|
||||
* @param goBright - true if switching to bright theme, false if switching to dark theme
|
||||
*/
|
||||
protected themeChanged?(goBright: boolean): void;
|
||||
|
||||
public async connectedCallback() {
|
||||
super.connectedCallback();
|
||||
const domtools = await this.domtoolsPromise;
|
||||
this.themeSubscription = domtools.themeManager.themeObservable.subscribe((goBrightArg) => {
|
||||
this.goBright = goBrightArg;
|
||||
// Call themeChanged if it's defined
|
||||
if (this.themeChanged) {
|
||||
this.themeChanged(goBrightArg);
|
||||
}
|
||||
});
|
||||
this.rxSubscriptions.push(this.themeSubscription);
|
||||
for (const startupFunction of this.startupFunctions) {
|
||||
|
Reference in New Issue
Block a user